Abstract
This work presents the Brisk Machine, a machine model for the implementation of functional languages. It is especially designed to be flexible and dynamic, so that it can support a uniform and efficient implementation of multiple paradigms such as computational mobility, dynamic loading and linking, and logic programming.
The Brisk Machine is based on the STG Machine, though its model is simplified and adapted so that the various paradigms it supports can be accommodated easily without interference between them.
Preview
Unable to display preview. Download preview PDF.
References
Lennart Augustsson. Compiling lazy functional languages, part II. PhD thesis, Chalmers University, 1987.
Lennart Augustsson, Brian Boutel, Warren Burton, Joseph Fasel, Andrew D. Gordon, John Hughes, Paul Hudak, Thomas Johnson, Mark Jones, Erik Meijer, Simon L. Peyton Jones, Alastair Reid, and Philip Wadler. Haskell 1.4, A Nonstrict, Purely Functional Language. Technical report, Yale University, 1997.
Geoffrey Burn. Lazy Functional Languages: Abstract Interpretation and Compilation. Pitman, 1991.
Geoffrey Burn and Simon L. Peyton Jones. The Spineless G-machine. In Conference on Lisp and Functional programming, 1988.
Manuel M.T. Chakravarty and Hendrik C.R. Lock. The JUMP-machine: a Generic Basis for the Integration of Declarative Paradigms. In Post-ICLP Workshop, 1994.
J. Gosling, J. B. Joy, and G. Steele. The Java Language Specification. Addisson Wesley, 1996.
Ian Holyer. The Brisk Kernel Language. Technical report, University of Bristol, Department of Computer Science, 1997.
Thomas Johnsson. Lambda Lifting: Transforming Programs to Recursive Equations. In Jouannaud, editor, Functional Programming and Computer Architecture, volume 201 of LNCS, pages 190–205. Springer Verlag, 1985.
Thomas Johnsson. Compiling lazy functional languages. PhD thesis, Chalmers University, 1987.
David Lester and Simon L. Peyton Jones. A modular fully-lazy lambda lifter in Haskell. Software Practice and Experience, 21(5), 1991.
J. W. Lloyd. Declarative programming in Escher. Technical Report CSTR-95-013, Department of Computer Science, University of Bristol, June 1995.
Simon L. Peyton Jones. Implementing Functional Languages. Prentince Hall, 1992.
Simon L. Peyton Jones. Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine. Journal of Functional Programming, 2(2): 127–202, July 1992.
Simon L. Peyton Jones and John Launchbury. Unboxed values as first class citizens in a non-strict functional language. In Functional Programming and Computer Architecture, Sept 1991.
Simon L. Peyton Jones and John Salkild. The Spineless Tagless G-machine. In MacQueen, editor, Functional Programming and Computer Architecture. Addisson Wesley, 1989.
Stuart Wray and J. Fairbairn. Tim — a simple lazy abstract machine to execute supercombinators. In Functional Programming and Computer Architecture, volume 274 of LNCS, Portland, Oregon, 1987. Springer Verlag.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Holyer, I., Spiliopoulou, E. (1998). The brisk machine: A simplified STG machine. In: Clack, C., Hammond, K., Davie, T. (eds) Implementation of Functional Languages. IFL 1997. Lecture Notes in Computer Science, vol 1467. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0055422
Download citation
DOI: https://doi.org/10.1007/BFb0055422
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-64849-9
Online ISBN: 978-3-540-68528-9
eBook Packages: Springer Book Archive