Abstract
P-continuation is an extension of Scheme continuation into concurrency, which was introduced in PaiLisp. This paper explains in details the implementation of PaiLisp interpreter based on P-continuations. PaiLisp is a parallelized Scheme based on shared memory architecture, and it is a superset of Multilisp with many concurreny constructs. One of the major contributions of PaiLisp efforts is in extraction of its kernel language PaiLisp-Kernel, which is defined to be Scheme plus four concurrency constructs spawn,suspend,call/cc,exlambda, where ”call/cc“ is an extended call/cc to create P-continuation, a parallel continuation introduced in PaiLisp. [Ito-Matusi 90] shows that all the PaiLisp constructs can be defined using PaiLisp-Kernel.This paper explains the PaiLisp interpreter implemented on a shared memory machine Alliant FX/80 with eight processor elements.The PaiLisp interpreter is featured in use of P-continuation to realise the concurrency constructs of PaiLisp. Experimental results to evaluate the performance of PaiLisp system are also given using several Lisp benchmark programs. Appendix contains a brief description of an experimental PaiLisp compiler.
Preview
Unable to display preview. Download preview PDF.
References
H.Abelson,G.J.Susmann: Structure and Interpretation of Computer Programs, The MIT Press (1985)
S.G.Akl: Parallel Sorting Algorithms,Academic Press(1985)
C.Chang,R.Lee: Symbolic Logic and Mechanical Theorem Proving, Academic Press(1973)
R.Gabriel,J.McCarthy: Queue-based multiprocessing Lisp,Conference Record of 1984 ACM Symposium on Lisp and Functional Programming,25–44(1984)
R.H.Halstead,Jr.: Implementation of Multilisp:Lisp on a multiprocessor,Conference Record of 1984 ACM Symposium on Lisp and Functional Programming, 9–17(1984)
R.H.Halstead,Jr.: Multilisp:A language for concurrent symbolic computation, ACM Trans.on Programming Languages and Systems,501–538(1985)
R.H.Halstead, Jr.: New ideas in parallel Lisp:Language,implementation, and programming tools, Springer LNCS, 441, 2–57(1990)
T.Ito,S.Wada: Models of parallel execution of Lisp functions and their evaluations,SIG Report of Symbolic Processing,SYM26-5, Information Processing Society of Japan(1983)〈in Japanese〉
T.Ito,T.Tamura,S.Wada: Theoretical comparisons of interpreted/compiled executions of Lisp on sequential and parallel machine models, Information Processing 86, Proceedings of IFIP Congress 86, 349–354(1986)
T.Ito,T.Matsuyama,H.Kurokawa,A.Kon,M.Ohtomo: An MC68000-based multiprocessor system with shared memory and its applicaton to parallel Lisp interpreter, Proceedings of Symposium on Computer Systems,Information Processing Society of Japan(1987)
T.Ito,R.H.Halstead,Jr.: Parallel Lisp Languages and Systems,Springer LNCS,441,Springer Verlag(1990)
T.Ito,M.Matsui: A parallel Lisp language PaiLisp and its kernel specification, Springer LNCS, 441, 58–100(1990)
T.Ito: Lisp and Parallelism,Artificial Intelligence and Mathematical Theory of Computation,Papers in Honor of John McCarthy, (ed. V.Lifshitz),187–206,Academic Press(1991)
T.Ito,T.Seino: On PaiLisp continuation and its implementation,Proceedings of ACM Workshop on Continuations(ed. O.Danvy & C.Talcott),Stanford (1992)
J.McCarthy: Recursive functions of symbolic expressions and their computation by machine, Communications ACM, 3, 4, 184–195(1960)
I.A.Mason,J.D.Pehoushek,C.Talcott,J.Weening,:Programming in QLisp, Technical Report STAN-CS-90-1340,Department of Computer Science, Stanford University(October,1990)
R.B.Osborne,: Speculative Computation in Multilisp,MIT/LCS/TR-464 (1989)
J.Rees,W.Clinger(eds): The revised3 report on the algorithmic language Scheme, ACM SIGPLAN Notices,21,37–79(1986)
S.Springer,D.Friedman,: Scheme and the Art of Programming,The MIT Press(1989)
I.Takeuchi(ed): The report of the second Lisp implementation contest,SIDSYM 5-3, Information Processing Society of Japan (1978) [in Japenese]
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ito, T., Seino, T. (1993). P-continuation based implementation of PaiLisp interpreter. In: Halstead, R.H., Ito, T. (eds) Parallel Symbolic Computing: Languages, Systems, and Applications. PSC 1992. Lecture Notes in Computer Science, vol 748. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0018650
Download citation
DOI: https://doi.org/10.1007/BFb0018650
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57396-8
Online ISBN: 978-3-540-48133-1
eBook Packages: Springer Book Archive