Hostname: page-component-8448b6f56d-xtgtn Total loading time: 0 Render date: 2024-04-18T02:35:00.743Z Has data issue: false hasContentIssue false

The bologna optimal higher-order machine

Published online by Cambridge University Press:  07 November 2008

Andrea Asperti
Affiliation:
Dipartimento di Matematica, P.zza di Porta S.Donato 5, Bologna, Italy (e-mail: asperti@cs.unibo.it)
Cecilia Giovannetti
Affiliation:
Dipartimento di Matematica, P.zza di Porta S.Donato 5, Bologna, Italy (e-mail: asperti@cs.unibo.it)
Andrea Naletto
Affiliation:
Dipartimento di Matematica, P.zza di Porta S.Donato 5, Bologna, Italy (e-mail: asperti@cs.unibo.it)
Rights & Permissions [Opens in a new window]

Abstract

Core share and HTML view are not available for this content. However, as you have access to this content, a full PDF is available via the ‘Save PDF’ action button.

The Bologna Optimal Higher-order Machine (BOHM) is a prototype implementation of the core of a functional language based on (a variant of) Lamping's optimal graph reduction technique (Lamping, 1990; Gonthier et al., 1992a; Asperti, 1994). The source language is a sugared λ-calculus enriched with booleans, integers, lists and basic operations on these data types (following the guidelines of Interaction Systems – Asperti and Laneve (1993b, 1994), Laneve (1993)). In this paper, we shall describe BOHM's general architecture (comprising the garbage collector), and give a large set of benchmarks and experimental results.

Type
Articles
Copyright
Copyright © Cambridge University Press 1996

References

Aczel, P. (1978) A general Church–Rosser Theorem. Draft, Manchester.Google Scholar
Asperti, A. (1994) Linear logic, comonads, and optimal reductions. Fundamenta Informaticae, Special Issue on ‘Categories in Computer Science’.Google Scholar
Asperti, A. (1995) δ∘!ε = 1: optimizing optimal λ-calculus implementations. Proc. Sixth International Conference on Rewriting Techniques and Applications – RTA'95, Kaiserlautern, Germany.Google Scholar
Asperti, A. and Laneve, C. (1993a) Paths, computations and labels in the λ-calculus. Theoretical Computer Science, Special issue on RTA'93, Montreal.Google Scholar
Asperti, A. and Laneve, C. (1993b) Interaction Systems II: the practice of optimal reductions. Technical Report UBLCS-93-12, Laboratory for Computer Science, Univerity of Bologna.Google Scholar
Asperti, A. and Laneve, C. (1994) Interaction Systems I: the theory of optimal reductions. Mathematical Structures in Computer Science.CrossRefGoogle Scholar
Asperti, A. and Laneve, C. (1995) Relating λ-calculus translations in sharing graphs. Proc. 2nd International Conference on Typed Lambda Calculi and Applications – TLCA'95, Edinburgh, Scotland.Google Scholar
Asperti, A., Danos, V., Laneve, C. and Regnier, L. (1994) Paths in the λ-calculus: three years of communications without understandings. Proc. LICS'94, Paris, France.Google Scholar
Danos, V. and Regnier, L. (1993) Local and asynchronous beta-reduction. Proc. 8th Annual Symposium on Logic in Computer Science – LICS 93, Montreal.Google Scholar
Field, J. (1990) On laziness and optimality in lambda interpreters: tools for specification and analysis. Proc. 17th ACM Symposium on Principles of Programmining Languages – POPL 90.CrossRefGoogle Scholar
Giovannetti, C. (1994) Estensione dell'implementazione ottimale del lambda calcolo con tipi di dato primitivi. Dissertazione di Laurea, Università degli Studi di Bologna.Google Scholar
Girard, J. Y. (1986) Linear logic. Theoretical Computer Science 50.Google Scholar
Girard, J. Y. (1988) Geometry of interaction I: Interpretation of system F. In” Ferro, , Bonotto, , Valentini, and Zanardo, (eds.), Logic Colloquium '88. North Holland.Google Scholar
Girard, J. Y. Geometry of interaction II: Deadlock-free algorithms. Proc. International Conference on Computer Logic – COLOG 88.Springer-Verlag.Google Scholar
Girard, J. Y., Taylor, P. and Lafont, Y. (1989) Proofs and Types. Cambridge University Press.Google Scholar
Gonthier, G., Abadi, M. and Lévy, J. J. (1992a) The geometry of optimal lambda reduction. Proc. 19th Symposium on Principles of Programming Languages – POPL 92.CrossRefGoogle Scholar
Gonthier, G., Abadi, M. and Lévy, J. J. (1992b) Linear logic without boxes. Proc. 7th Annual Symposium on Logic in Computer Science – LICS'92.Google Scholar
Klop, J. W. (1980) Combinatory reduction system. PhD Thesis, Mathematisch Centrum, Amsterdam.Google Scholar
Lafont, Y. (1990) Interaction nets. Proc. 17th Symposium on Principles of Programming Languages – POPL 90, San Francisco, CA.Google Scholar
Laneve, C. (1993) Optimality and concurrency in interaction systems. PhD thesis, Dip. Informatica, Università di Pisa.Google Scholar
Lamping, J. (1989) An algorithm for optimal lambda calculus reductions. Xerox PARC Internal Report.Google Scholar
Lamping, J. (1990) An algorithm for optimal lambda calculus reductions. Proc. 17th Symposium on Principles of Programming Languages – POPL 90, San Francisco, CA.Google Scholar
Lévy, J. J. (1978) Réductions correctes et optimales dans le lambda-calcul. Thèse de doctorat d'état, Université de Paris VII.Google Scholar
Lévy, J. J. (1980) Optimal reductions in the lambda-calculus. In: J. P., Seldin and J. R., Hindley (eds.), To H. B.Curry, Essays on Combinatory Logic, Lambda Calculus and Formalism, pp. 159191. Academic Press.Google Scholar
Leroy, X. and Mauny, M. (1992) The Caml Light system, release 0.5. Documentation and user's manual. INRIA Technicl Report.Google Scholar
Naletto, A. (1994) Progetto e realizzazione di un garbage collector per l'implementazione ottimale dei linguaggi funzionali. Dissertazione di Laurea, Università degli Studi di Bologna.Google Scholar
Peyton Jones, S. L. (1987) The Implementation of Functional Programming Languages. Prentice Hall.Google Scholar
Regnier, L. (1992) Lambda Calcul et Réseaux. Thèse de doctorat, Université Paris VII.Google Scholar
Wadsworth, C. P. (1971) Semantics and pragmatics of the λ-calculus. PhD thesis, Oxford University.Google Scholar
Submit a response

Discussions

No Discussions have been published for this article.