I'm also interested in the rendering performance. A later "going deep" interview about the "under the covers" improvements and architechture would indeed be interesting. But so far so good, Acid2 is a great milestone to pass, seing how much emphasis has
been put on it by various parties.
Don't sweat it. It's a dialogue and few will have something against the occasional superlative. It's not like it's a monologue and you have to exercise robotic silence. Scoble would have a tendency to disrupt the interview with long drawn out laughter,
but other than that, I don't see anything wrong with C9 interviews. And the new experiments with you, a domain expert (Beckman) and another domain expert (*) is very appealing. So keep up the good work.
Charles wrote:What do you think of this format: expert to expert? C
AWESOME! I had a "brain wave" (if you want to call it that way) a few hours ago. Why not throw a few experts together and let them defent their technology against each other? I don't know if that is doable but sounds very cool to me...
haha like "expert death match"
Charles sort of already did it with functional vs. imperative at JAOO. I think that could be revisited because all those guys seemed pretty set on functional languages. I want a diehard imperative guy to take on a diehard functional guy haha
I'll see what I can do C
Throw in an OS expert and I'll fetch the popcorn! Ding ding!
The world is in constant flux. People will flow towards the languages with the fewest compromises. The languages that have the most powerful abstractions, are the easiest to learn, the easiest to use, compile to the fastest code on current hardware and help
the most with debugging (compile time, or runtime.)
C# isn't the final language, and can't be evolved into it a hundred years from now - unless you forget about backwards compatibility and you don't - that's the only reason not to invent a new and better language from scratch. CIL is not the final IM and the
same evolvability constraints probably goes for it as well. Same with the CLR, etc.
I've always felt that the languages of the future will melt with IDE's. In a sense a DSL with a visual abstraction constitutes this melting and blurring of distinctions, just as functional languages blur the distinction between function and value. The real
sign of this blurring of lines will be when languages are expressed in graph metaformats (the idea of XML, but more general), allowing flexible program visualizations and transformations.
Half-way through there's already been some simplifications, albeit for the sake of the audience. A couple of points...
First; statically typed languages don't have to always have types expressed explicitly, that's where type-inference comes into play, both in C# 3 and F#. That's one benefit of dynamically typed languages taken away.
Second; polymorphism may be restricted to use explicit (intensional) subtyping in C#, but there's also the concept of structural subtyping. I've encountered this in the excellent little language haXe, which has this concept of static compatibility. There is
no need for explicit relationships, it just checks for "accidental" compatibility of signatures. That's a great feature. In fact it goes perfect together with object literals.
In some cases, one may want to force intensional contracts, and then one can use explicit class and type inheritance. As a static feature, that does not support dynamic incidental compatibility, but it also doesn't break dynamically for a lack of such compatibility.
It's one of the best JAOO videos on channel 9 though (also liked Gilad Bracha's somewhat). Too bad there aren't any actual presentation videos here.