Posted By: Charles | Nov 3rd, 2009 @ 8:19 AM | 31,479 Views | 19 Comments
The great Burton Smith, Microsoft Technical Fellow and an international leader in high-performance computer architecture and programming languages for parallel computing joins functional programming purist and language design guru Erik Meijer to discuss several major themes of parallel computing and distributed programming. As always, you will get a lesson in history, present trends and future possibilities. This is simply an awesome and deeply wonderful conversation. Burton is a treasure.

Erik shows up for the conversation only after Burton begins to talk about a potential definition for functional programming. Right on queue, Erik arrives!

Burton will be presenting his thinking on parallel and concurrent programming at PDC09. He will also be a panelist on the Future of Programming panel (and Erik will be the panel moderator - you won't want to miss the panel if you are attending PDC!).
Rating:
14
1

Come on Charles, you got to give me some time to sleep Smiley. Just when I think I can catch up on C9 videos to watch, you go and release another one I must watch Smiley.

exoteric
exoteric
embarassingly sequential

This video was very enjoyable; lots of humor and insight Smiley

 

I love the idea of ultra-cheap cross-core/processor communication that facilitates extremely fine-grained parallelism. Meanwhile maybe some form of complexity and strictness analysis will help determine sensible concurrency granularity given pure semantics.

 

Quote of the talk: "dysfunctional programming" - a brilliant way to frame every other kind of programming. Not serious, just fun, heh

Always love the Burton videos.  They are right up there with the Beckman videos in the must watch category ... you wish they would just keep going for a few more hours. 

staceyw
staceyw
Before C# there was darkness...

Good stuff.

In terms of exceptions as values, at the 500 foot level, it would seem if Object had a new property to "hold" exception, the type system would/could just work.  You could use normal try/catch or not as needed.  In a message passing model, I would tend to think all non-void functions need to return a type even if that type is an exception. 

var x = foo(0);          // foo returns exception inside Int object.
Write(x.ToString()); // x.ToString() returns exception text inside object.
if (x.IsException())   // Can test any object (including value types) for exception.
    Write("x holds exceptional value.");
var y = x + 1;     // Statement exception on eval here because x "contains" exceptional x.
return y;      // Return normal result.

 

On "y = x + 1" does runtime throw or just return "exceptional" x.  How to handle void functions?

Here is small token of my appreciation Erik:

aL_
aL_
Rx ftw

you know, i dont think the awnser to charles question "will there be new languages" is that obvious.. arent java and c# really just c++ witch in turn is really just c? arent f# just ocaml witch in turn is ml? haskell and smalltalk are really old too.

i wonder if any completly new languages that arent based on anything exsisting will emerge in the forseeable future. sure, the ones we have will continue to evolve and fork, but will there be a completly new general purpose language? the awnser is less obvious at least Smiley

Microsoft Communities