Fast parallel implementation of lazy languages—the EQUALS experience
Owen Kaser B, Shaunak R. Pawagi, C. R. Ramakrishnan, I. V. Ramakrishnan, Ramnath Sekar · 1992
This paper describes EQUALS, a fast parallel implementation of a lazy functional language on a commercially available shared-memory parallel machine, the Sequent Symmetry. In contrast to previous implementations, we detect parallelism automatically by propagating exhaustive (normal form) demand. Another important difference between EQUALS and previous implementations is the use of reference counting for memory management instead of garbage collection. Our implementation shows that reference counting leads to very good scalability, low memory requirements and improved locality. We compare our results with sequntial SML/NJ as well as parallel (v, G-machine and GAML implementations.