"We describe a distributed implementation of Scheme that permits efficient transmission of higher-order objects such as closures and continuations. The integration of distributed communication facilities within a higher-order programming language engenders a number of new abstractions and paradigms for distributed computing. Among these are user-specified load-balancing and migration policies for threads, incrementally linked distributed computations, and parameterized client-server applications. To our knowledge, this is the first distributed dialect of Scheme (or a related language) that addresses lightweight communication abstractions for higher-order objects."
Higher-order distributed objects Full Text: PDFPDF Get this ArticleGet this Article Authors: Henry Cejtin NEC Research Institute, Princeton, NJ Suresh Jagannathan NEC Research Institute, Princeton, NJ Richard Kelsey NEC Research Institute, Princeton, NJ Published in: · Journal ACM Transactions on Programming Languages and Systems (TOPLAS) TOPLAS Homepage archive Volume 17 Issue 5, Sept. 1995 Pages 704-739
As the work presents it, the function passing model is a generalization of the Spark/MapReduce model: data is stationary and immutable, stateless closures are passed around the network providing type-safe, higher-order programming with deferred evaluation. The contributions of the paper provide include an implementation of the model in Scala, and re-implementations of systems like Spark to demonstrate the applicability and generality of the model itself.
Function Passing: A Model for Typed, Distributed Functional Programming [1] https://2016.onward-conference.org/event/onward-2016-papers-...
"Function Passing Style: Typed, Distributed Functional Programming" by Heather Miller [2] https://www.youtube.com/watch?v=coX9RKH4rOs