Posts

Showing posts from March, 2012

GC-safe points, mutator suspension and barriers

Reading the section about "GC-safe points and mutator suspension" in Richard Jones' excellent GC Handbook made me realize that HLVM 's approach is both unusually simple and yet still very effective and, therefore, deserves to be described. GC safe points are apparently regarded as a tricky subject by many people. Jones says that approaches to safe points may be classified into (effectively) eager and lazy preparation. He goes on to say that thread suspension complicates matters by interrupting the thread at uncontrolled points and mentions probabilistic advancement to the next safe point. Attention is given to the problem of devising stack maps expressive enough to convey locally-held references. Even the idea of compressing stack maps to save space is covered. Self-modifying code or "patching" as an alternative to polling is mentioned. The section describing where GC check points can go is particularly interesting: " Beyond the minimal points needed f...

New startup to productize Haskell

Former Microsoft employee Aaron Contorer founded a new company called FPComplete last month with a mission statement to "increase the productivity, quality and power of software with Functional Programming technology". In particular, they are promoting the use of Haskell in industry and they go on to say "We’ll be helping to complete and maintain the tool sets, the libraries, the platform and integration support".

Red Gate on concurrent programming

Amidst the excitement around the new support for asynchronous programming in C# 5, Alex Davies of Red Gate software writes: " Before C# 5, I think I was about the only person in the world who really cared about asynchronous programming " In fact, many of our 1,000 corporate clients have been developing concurrent programs on .NET over the past two years. The world's foremost supplier of electronic trading and order matching software for brokers, exchanges and traders in the energy industry recently rewrote their trading user interface using async. The UK's largest insurance company provide life insurance quotes on-line using async. They are all doing this using  F#  because it has supported async out-of-the-box since it was first released in Visual Studio 2010. Even if you intend to write your asynchronous programs in C# 5, we recommend taking a look at how people have been writing asynchronous programs on .NET using  F#  including the following F#.NET Journal...