1 research outputs found
Implementing distributed {\lambda}-calculus interpreter
This paper describes how one can implement distributed {\lambda}-calculus
interpreter from scratch. At first, we describe how to implement a monadic
parser, than the Krivine Machine is introduced for the interpretation part and
as for distribution, the actor model is used. In this work we are not providing
general solution for parallelism, but we consider particular patterns, which
always can be parallelized. As a result, the basic extensible implementation of
call-by-name distributed machine is introduced and prototype is presented. We
achieved computation speed improvement in some cases, but efficient distributed
version is not achieved, problems are discussed in evaluation section. This
work provides a foundation for further research, completing the implementation
it is possible to add concurrency for non-determinism, improve the interpreter
using call-by-need semantic or study optimal auto parallelization to generalize
what could be done efficiently in parallel.Comment: 8 pages, 4 tables, 1 figure, proceeding AINA-2018 workshop