I would like to hear more about integration between concurrency paradigms, formally and practically - in software stacks. To quote Niklas
"The developer division concurrency runtime, on the other hand, is designed to serve as low-level infrastructure for a variety of programming models surfaced in libraries
"Therefore, we are looking into how we can integrate the CCR functionality on top of the concurrency runtime once
we have shipped the latter; it's important to us that it work well with other libraries that may also be used in an application, such as OpenMP, MPI, PLINQ, etc."
Yep. Nothing kills a good interview like bad audio - clipping, distortion and too low volume. And God forbid anyone uses constant background music - like reading text over a difference clouds effect. You know who you are, B.K.
I have thoroughly enjoyed all the M and Parallelism talks. For parallelism there is enough to keep you busy for quite some time.
So now we know that Maestro is built on CCR.
I would be interested in
Native vs managed integration? - CRT/PPL vs TPL/threadpool
What scale do you expect what libraries to be able to manage?
What level of concurrency do what libraries efficiently enable?
How do what concurrency paradigms affect program complexity and predictability and how future proof will they be
In the past sequential programs became faster with faster processors; we cannot just expect parallel programs to continue to scale - exposing concurrency at some level may seem fine, but it will start to hurt at some level -- program flow prevents absolute
parallelism; maximization how? - Niklas talks about speculative parallelism...
Where is Microsoft be dogfooding these libraries - applications and services; what is being done in Windows itself, going forward?
What will it dogfood where and why?
How deep into the OS will it dogfood and what will be used where?
What does concurrency mean for Windows?
Is it feasible?
On what scale?
Dynamic program optimization for needed parallelism (no. of cores) or static partitioning with "fixed-grained" tasks?
Parallelism concepts, how many are there both research-stage and applied
As usual, Anders presents us with all the goodies, packaged up in time for Christmas. A paedagogical talent as well.
The explanation of dynamic is very good and should lay to rest the unfounded criticism of the feature. Of course anytime you introduce another hammer there's a chance someone else use it to knock themselves out, but it sure is a nice thing to have. The
examples of DOM and REST are very good and I'm very intrigued to explore them closer. Some things are indeed inherently dynamic and "unsafe", you just have to box them in, and that is exactly what the dynamic type does.
Also looking very much forward to the next VS with MEF and "AST coloring" (okay, bad term).
The Design-by-Contract (CodeContract) is of course very Eiffelike, even the old-value semantics is there. The syntax is quite bloated in comparison [as leriksen71
says], but having the semantics at all is a first step. Also, tail recursion optimization is a welcome improvement.