OOPSLA Day 2: Explicit Use-Case Representation in Programming Languages

One of the emerging themes at this conference is the need to move “examples” (and their older siblings, scenarios and use-cases) “into the code,” so that examples/stories/scenarios/use-cases, which are tremendously meaningful to the subject-matter experts, are actually traceable directly into the code, which is tremendously meaningful to …

more ...

OOPSLA Day 2: David Ungar -- Everything You Know (About Parallel Programming) Is Wrong

I should hope so.

This was the afternoon’s first major talk. David Ungar from IBM Research first demonstrated that the tragedy of Romeo & Juliet comes from a race condition (if only he had waited for news from the Friar).

That was excellent, but the real premise of his talk …

more ...

OOPSLA Day 2: More on Dart

I think when people saw that Dart was from Gilad Bracha and Lars Bak there was an expectation that Dart was going to be a grand synthesis: a blazingly-fast NewSpeak-with-curly-brackets. It’s very much not such a language. It doesn’t seem, academically, vastly innovative because it doesn’t add …

more ...

Knowing Scala: Exercise 1

Taking my own 15 Exercises to Know A Programming Language as a starting point for my exploration of Scala...

The first set of exercises are right up the alley of a language with pattern-matching and list-processing:

Write a program that takes as its first argument one of the words ‘sum …

more ...

Goldilocks: A race-aware Java runtime - Microsoft Research

Goldilocks: A race-aware Java runtime - Microsoft Research.

This one's been in my backlog to post about for awhile. Not only is it interesting as a concept, I find it also interesting that it's a Java runtime and not based on the CLR. Technical reason or just researcher interest?

more ...

FunLoft: Reactive Concurrent Programming Language

It sounds like someone designed a programming language with the express intention of intriguing me:

FunLoft is an experimental language for concurrent programming, designed with the following objectives:

  • make concurrent programming simpler by providing a framework with a clear and sound semantics.
  • provide a safe language, in which, for example …
more ...

Entropy always increases: Visualising sorting algorithms

Entropy always increases: Visualising sorting algorithms.

Lovely way of visualizing sorting. I especially like the visualization of the "divide and conquer" algorithm:

img img

more ...

MS Concurrency Guru Speaks of "new operating system"

If you are interested in high-performance programming on Windows, you know the name Joe Duffy, whose book Concurrent Programming On Windows is absolutely top-notch.

Today he posted an intriguing notice on his blog "We are hiring." Check out some of the things he says:

My team's responsibility spans multiple aspects …

more ...

The Traveling Astronomer Problem

Apropos of something I'm not quite ready to talk about, here is an interesting challenge:

How do you optimize your time at the telescope if you have a set of objects that you'd like to observe?

For instance, if you want to see as many Messier objects as you can …

more ...

.Net Managed Interface for GPGPU and x64 Multicore Programming with Accelerator from F#

I wish I had time to investigate Accelerator v2, a managed interface for General-Purpose GPU and x64 multicore data-parallel programming. Fun!

Satnam Singh's MSDN Blog : GPGPU and x64 Multicore Programming with Accelerator from F#.

more ...