Software Composability and the Future of Languages

Anders Hejlsberg, Herb Sutter, Erik Meijer, Brian Beckman: Software Composability and the Future of Languages

This is an about an hour long video on channel9 about various .NET languages.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Good interview

For the lazy here ist the clickable url :

I like the interview a lot. Together these folks seem to have a good balance of understanding of the practical side of programming language design as well as the theoretical.

My only critique, would be the overwhleming naivete of the questions.

They gotta get a new interviewer

Meijer says (38:18) that participants of a compiler dev lab (professional compiler writers) said that F# was the best dynamic language.

Does anyone agree with what is said about "object oriented code in C using fopen, ftell & fclose"? (47:10)

[OT] Re: F#

Technically, F# sounds great what with the O'Caml-ish parentage, and the blogs around it seem to be full of very interesting and educational material. If only the MSFT licensing wasn't so scary to me - guess I'm stuck with Scala.

[OT] Re: F#

The F# license seems on par with Sun's licensing. Which terms are giving you trouble?

[OT] licensing

I'd agree that the licensing around the JVM vs. CLR isn't that big a deal since there are multiple vendors etc. Tho isn't the JVM gettinre more "open" than CLR now?

The F# license is for the language, not the runtime. The Scala language license is BSD-style which sounds more safe / friendly for my purposes.

Do you know why I can't find Scala interactive mode

in the latest release any more?

Does a double [OT] cancel itself out?

See the Scala changelog ... last June: "Merged commands scalaint and scalascript with the command scala."


the stdio library does implement a crude form of subtype polymorphism.

Unfortuantely, the C std library provides no means for you to create your own FILE types (providing your own implementations of fread, fwrite, and other primitives), enabling you to pass such creatures to fprintf and other useful functions. You only get the FILE types returned by fopen--and on many platforms, FILE is mainly a buffering scheme slapped on top of the OS I/O subsystem, which is where most of the device-specific polymorphism is really implemented.

You could just as easily argue that the qsort() function provided by the standard library is functional programming. It is to an extent--qsort is a higher-order function that works via type-unsafe casts to function pointers--but it's a crude implementation.