I love ad-hoc\duck typing. I think this is one of the best features in Go. In C# it is very painful to get something close to duck typing\ad hoc interfaces without a lot of performance penalties.. I usually switch over to F# and static ^ types for my structural typing needs. One of the biggest problems with any large code base in almost any language in my opinion are these weird object hierarchies that only the original designer can understand. (or maybe no one can understand) The Managed Extensibility Framework (MEF) in an early preview version had great duck typing support but in the recent versions it has been removed. I wish it was still there.
@milgner I think this would be a blocking wait and it think it will only work in Metro style apps. I was really hoping for a await language feature in C++ that would do the auto continuation (state machine) kind of thing like C# (Non Blocking). Herb mentioned having this language feature possibly in the future with his talk here http://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2012/-Not-Your-Father-s-C-
It took a while for that video to go up so I was completely unaware that Herb was already thinking about await as a C++ language extension or I would not have mentioned it again. Thanks all language guys at Lang.Next, I've been very impressed.
@hsutter I'm so excited to hear you talking about a possible await language feature for C++. And now I just read your comments about a possible safe mode, I'm running out of reasons to choose C# over C++ on many types of projects now.
Every time I hear Andrei Alexandrescu talk it makes me want to start programming in D. What a great technical salesman. I think this is a great comparison between two amazing languages on opposite sides of the spectrum. Too bad Lang.Next its only once a year, it's like Christmas for me!!
More like this please. Carl Hewitt is brilliant!! Also thanks so much Clemens for the summation at the end, it was very helpful. And always Erik was great; I had many of the same thoughts like tail recursion and event loops basically being the same thing. I would love to see some specific examples of where these break down as compared to the actor model. I still don't 100% understand the distinction in my head. Thanks guys.
@dot_tom with the recent release of iOS 5 and auto ref counting by the compiler, (I'm not talking about smart pointers) Apple has a really nice story around memory management in my opinion. Even before the auto ref counting having nicely named functions to denote ownership was really nice. I'm glad to hear I'm not the only one who really loves Microsoft but also has a fond place for Apple. I almost felt like a traitor.
I would like to see someone from Apple on these native talks speaking about Objective-C or any one of the native languages on the Mac. Being a Mac and Windows developer I would love to hear about API design decisions and much of the thought process behind both Mac and Windows languages in one session. In many ways I see Mac as being ahead on a native front and Windows being ahead on a managed front but I am by no means an expert. I would love to see this explored further. Thanks.