Erlang allows for massively scalable concurrency, often with millions of lightweight, thread-like components known as actors. Unfortunately, using Erlang requires rewriting all of your legacy code into a rather esoteric language. But there are other options, such as the little known CCR platform that was developed by .NET's robotics department.

Actor based languages such as Erlang are able to achieve high degrees of parallelism by using the Actor model. Under this model the fundamental unit of concurrency is not a thread or fiber, but rather something much smaller. Known as a "process" in Erlang, each unit of concurrency has a base overhead of about 1200 bytes on a 32-bit system. By comparison, a thread on the Windows operating system defaults to 1 MB just for the stack, additional space is also needed for bookkeeping and thread local storage. Because they are so lightweight, an application can spawn literally millions of processes simultaneously.

In short, Joe argues, "Throughout, it became abundantly clear that TM, much like generics, was a systemic and platform-wide technology shift. It didn’t require type theory, but the road ahead sure wasn’t going to be easy." The whole blog post deals with how many implementation challenges platform-wide support for STM would be in .NET, including what options were considered. He does not mention Maurice Herlihy's SXM library approach, but refers to Tim Harris's work several times.

In this demo we showcase efforts in MSR to collaborate with external researchers to explore the application of new technologies, specifically Dryad and DryadLINQ, to big data research problems in science. We also highlight our efforts to provide software and services to academics across the world, through the release of Dryad and DryadLINQ free of charge to the research community, along with associated programming guides, user documentation, and code libraries. Dryad is a general-purpose distributed computing engine, more flexible than MapReduce or Hadoop!, that was designed to simplify the task of implementing distributed applications on clusters of Windows computers. DryadLINQ is an abstraction layer which simplifies the process of implementing Dryad-based applications. Microsoft Research is acutely aware of the ubiquity of big data and the challenges this presents. We are offering researchers the tools, resources and collaboration to explore this new area.

Starting from Visual Studio 2010 F# is full member of .NET Framework
languages family. It is functional language with syntax specific to
functional languages but I think it is time for us also notice and study
functional languages. In this posting I will show you some examples
about cool things other people have done using F#.

You would be forgiven if you thought the "F" in F# -- which made its debut as part of Visual Studio 2010 -- stands for "functional." After all, F# (pronounced "F sharp") is a functional programming language for the .NET Framework that combines the succinct, expressive, and compositional style of functional programming with the runtime, libraries, interoperability, and object model of .NET.

But Don Syme, inventor of F# and leader of the team that incubated the language, has a different, truncated, and entirely whimsical definition.

"In the F# team," says Syme, a principal researcher at Microsoft Research Cambridge, "We say, 'F is for Fun.' F# enables users to write simple code to solve complex problems. Programming with F# really does make many programming tasks simpler, and our users have consistently reported that they've found using the language enjoyable."

Indeed, F#, which has been developed in a partnership between Microsoft Research and the Microsoft Developer Division, is already popular with the .NET developer community. The language is widely known in the academic community and among thought leaders, and the list of admirers will only increase as Visual F#, the result of a partnership between Microsoft Research Cambridge and Microsoft's Developer Division, becomes a first-class language in Visual Studio 2010.

The VMKit project is an implementation of a JVM and CLI virtual machine
(.Net is an implementation of the CLI). It translates Java bytecode and
MSIL in the LLVM IR and uses the LLVM framework
for optimizations and compilation. For garbage collection, it uses
MMTk.
You can get and build the
source today.

In this talk Microsoft Technical Fellow and C# Chief Architect Anders Hejlsberg gives an overview of the new features in C# 4.0, including dynamic typing, co- and contra-variance, named and optional parameters, and improved COM interoperability. Anders will also discuss some of the ideas that are envisioned for future versions of C#.

This session is presented by Anders Hejlsberg during Microsoft DevDays 2010 in The Hague in The Netherlands.

F# is Microsoft's first functional programming language to be included as one of Visual Studio's official set of languages. F# is a succinct, efficient, expressive functional/object-oriented programming language under joint development by Microsoft Developer Division and Microsoft Research. During the course of Erik Meijer's fantastic lecture series on functional programming fundamentals several of you asked for examples of specific topics in F#. Well, we listened.

Dr. Don Syme is a principal researcher in MSR Cambridge. He has a rich history in programming language research, design, and implementation (C# generics being one of his most recognized implementations), and is the principle creator of F#. Who better to lecture on the topic than Don? This three part series will serve as an introduction to F#, including insights into the rationale behind the history and creation of Microsoft's newest language.

In ASP.NET development, F# also offers productivity advantages over VB and C#. F# is different because it is statically checked and type-safe. It addresses weaknesses in ASP.NET development like untyped values, complex form construction, and using strings for IDs and method names that connect markup with code-behind (class-files).

Writing a web application in F# on the WebSharper platform can be less-time consuming if a developer is not great at writing web apps in JavaScript. Through WebSharper, developers can write a web app using a large subset of F# and .NET core libraries and then just let WebSharper map the code to JavaScript. WebSharper can integrate with ASP.NET applications, but it is different from the standard approach because it builds applications from miniature web pages called "pagelets". The pagelets correspond to functions on the client-side and they are automatically translated into JavaScript.

WebSharper supports a wide range of JavaScript libraries, making it easy for developers to optimize their code in whatever way they choose. jQuery, qooxdoo, Flapjax, and Yahoo UI are all supported by WebSharper. The leap from F# to JavaScript is manageable because both are functional languages that support lambda expressions and closures. Another unique part of WebSharper is a "formlet". A formlet is a special pagelet that provides form functionality. Formlets in Web Sharper run and validate on the client, submitting their result to a either a client- or a server-side callback.

"Recently I have posted a zipping plugin - "On the Fly Zip and Attach" - for Windows Live Writer. I actually developed this component that was consumed in the writer's zipping plugin. I thought to share with you the approach of design/development of this component, from use cases to its implementation along with unit tests using Visual Studio-2008 Unit Test infrastructure."