Cl-mpi: MPI bindings for Common Lisp
code.google.comThe kids nowadays don't even know about MPI as a framework for parallel processing. Thank you, MapReduce.
Is that really a bad thing?
Not at all. Programming has become specialized since its inception; there are systems programmers and application programmers. The former creates the tools used by the later.
But, I expect the systems programmers to know not only the ins and outs of the current technologies, but what came before them. The past is full of beautiful architectures that didn't succeed for commercial reasons in their time, but would be perfect candidates to make a comeback in some form in the future. Even if we have to form a vigilante group of hacking do-gooders who will mail architects copies of important texts and papers (a la GvR and SICP ;-)
Needless to say, MPI is not one such "lost beauty", more like a committee designed piece of industry infrastructure. MPI == HPC.
Tell us about some of the lost beauties.
Walk to the CS section of any big university library and scan the shelves for the purple and gray "LNCS" books (Lecture Notes in Computer Science.) then weep in sorrow.
Not only is worse better, but industry seems to be at odds with good design.
The examples are simply too numerous and any examples would only be a poor and narrow representative, skewed to my tastes and my ignorance.
All I know is that we deserve better than this; a combination of MIPS, Smalltalk, Lisp, and Amoeba as mainstream platforms would have been nice.
Those of us who don't know history are bound to reinvent it.
Anyone who has used MPI - is it any good? A cursory glance makes it look like slightly gold-plated RPC.
I've used it for school work, but not for a real paying job. It can be good, but I used MPI raw, which is C based. So there is tons of rope to hang yourself. I just remember that it was a little difficult to have each spun process talk to the main process.