We investigate functional computation as a special form of concurrent computation. As formal basis, we use a uniformly confluent core of the -calculus, which is also contained in models of higher-order concurrent constraint programming. We embed the call-by-need and the call-by-value -calculus into the -calculus. We prove that call-by-need complexity is dominated by call-by-value complexity. In contrast to the recently proposed call-by-need -calculus, our concurrent call-by-need model incorporates mutual recursion and can be extended to cyclic data structures by means of constraints. A shorter version appeared in the Proceedings of the ACM Symposium on Principles of Programming Languages, St. Petersburg Beach, Florida, January 1996, ACM Press.
Download PDF Show BibTeX
Login to edit