3 ms·
Another Lisp variant developed for the Connection Machine was the cleverly named "Connection Machine Lisp": http://diyhpl.us/~bryan/papers2/paperbot/25aa007a09
by twoodfin 12y ago
Another Lisp variant developed for the Connection Machine was the cleverly named "Connection Machine Lisp":
http://diyhpl.us/~bryan/papers2/paperbot/25aa007a093cd69bbf070e6db9603c3a.pdf http://diyhpl.us/~bryan/papers2/paperbot/25aa007a093cd69bbf0...
The paper on it by Steele and Hillis is well-worth reading, as the language's fundamental mechanism of parallelism bears more than a passing resemblance to the MapReduce of 20 years later.
- lukego 12y agoHillis & Steele also wrote up many of the same ideas in a non-Lispy way. "Data Parallel Algorithms" http://cva.stanford.edu/classes/cs99s/papers/hillis-steele-data-parallel-algorithms.pdf http://cva.stanford.edu/classes/cs99s/papers/hillis-steele-d...
- judk 12y agoFor comparison, what are the other possibilities for parallelism? MapReduce seems the obvious obvious one.
- JadeNB 12y agoMy impression was that MapReduce isn't so much parallelism itself, but rather a way of organising the execution of a programme to take advantage of parallel processors. (Maybe this is a meaningless distinction; I have never written (intentionally) parallel code, and am not familiar with the terminology.) In that sense, Apple's GCD (https://en.wikipedia.org/wiki/Grand_Central_Dispatch https://en.wikipedia.org/wiki/Grand_Central_Dispatch) is another well known possibility—one of, presumably, many.