See this document in CiteSeerX!

Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine Version 2.5 (1992)  (Make Corrections)  (210 citations)
Simon L. Peyton Jones
Journal of Functional Programming



  Home/Search   Context   Related

 
View or download:
esw.inesc.pt/ftp/p...essgmachine.ps.gz
informatik.unibonn...stgmachine.ps.gz
microsoft.com/User...essgmachine.ps.gz
Cached:  PS.gz  PS  PDF   Image  Update  Help

From:  esw.inesc.pt/ftp/pub/mirror/ft... (more)
From:  informatik.unibonn....index.body
Homepages:  S.Jones  

Rate this article: (best)
  Comment on this article  
(Enter summary)

Abstract: The Spineless Tagless G-machine is an abstract machine designed to support nonstrict higher-order functional languages. This presentation of the machine falls into three parts. Firstly, we give a general discussion of the design issues involved in implementing non-strict functional languages. Next, we present the STG language, an austere but recognisably-functional language, which as well as a denotational meaning has a well-defined operational semantics. The STG language is the "abstract... (Update)

Cited by:   More
A Compiled Implementation of Strong Reduction - Grégoire, Leroy (2002)   (Correct)
LISP AND SYMBOLIC COMPUTATION: An International.. - Call-By-Need And..   (Correct)
Type-Secure Meta-Programming - Christopher Bentley Dornan (1998)   (Correct)

Active bibliography (related documents):   More   All
1.2:   The Glasgow Haskell compiler: a technical overview - Jones, Hall, Hammond.. (1992)   (Correct)
0.5:   The Spineless Tagless G-Machine - NOT! - Hammond (1993)   (Correct)
0.5:   Models for Persistence in Lazy Functional Programming Systems - McNally (1993)   (Correct)

Similar documents based on text:   More   All
1.4:   The Spineless Tagless G-machine, naturally - Jon Mountjoy Department   (Correct)
0.9:   Compiling Lazy Functional Programs Based on the Spineless.. - Choi, Lim, Han (2001)   (Correct)
0.6:   An Action Semantics for STG - Junior, de Moura, Lima, Lins (2000)   (Correct)

Related documents from co-citation:   More   All
27:   The Implementation of Functional Programming Languages (context) - Jones - 1987
23:   Compiling with Continuations (context) - Appel - 1992
21:   The glasgow Haskell compiler: a technical overview - Jones, Hall et al. - 1993

BibTeX entry:   (Update)

Simon L. Peyton Jones. Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine. Journal of Functional Programming, 2(2):127--202, April 1992. http://citeseer.ist.psu.edu/peytonjones92implementing.html   More

@article{ jones92implementing,
    author = "Simon L. Peyton Jones",
    title = "Implementing Lazy Functional Languages on Stock Hardware: The Spineless Tagless G-Machine",
    journal = "Journal of Functional Programming",
    volume = "2",
    number = "2",
    pages = "127-202",
    year = "1992",
    url = "citeseer.ist.psu.edu/peytonjones92implementing.html" }
Citations (may not include all citations):
521   Compiling with continuations (context) - Appel - 1992
359   The implementation of functional programming languages (context) - Jones - 1987
358   The Tera computer system - Alverson, Callahan et al. - 1990
206   Why functional programming matters - Hughes - 1989
190   List processing in real time on a serial computer - Baker - 1978
150   Report on the functional programming language Haskell, Versi.. (context) - Hudak, Jones et al. - 1992
143   A new implementation technique for applicative languages (context) - Turner - 1979
123   Simple generational garbage collection and fast allocation - Appel - 1989
116   Rabbit: a compiler for Scheme (context) - Steele - 1978
85   Garbage collection can be faster than stack allocation - Appel - 1987
84   Lambda lifting: transforming programs to recursive equations - Johnsson - 1985
76   a better support of static data flow - Consel, Danvy et al. - 1991
70   No assembly required: compiling Standard ML to C - Tarditi, Acharya et al. - 1991
69   Compiling lazy functional languages (context) - Johnsson - 1987
67   Representing control in the presence of first-class continua.. - Hieb, Dybvig et al. - 1990
66   Efficient compilation of lazy evaluation - Johnsson - 1984
55   Adding threads to Standard ML - Cooper, Morrisett - 1990
49   Heap profiling of lazy functional programs - Runciman, Wakeling - 1992
46   Caching considerations for generational garbage collection - Wilson, Lam et al. - 1992
40   Unboxed values as first class citizens (context) - Jones, Launchbury - 1991
39   Compilation of functional languages by program transformatio.. (context) - Fradet, Le Metayer - 1991
39   The Spineless Tagless G-machine (context) - Jones, Salkild - 1989
35   Implementing functional languages: a tutorial (context) - Jones, Lester - 1992
32   Debugging Standard ML without reverse engineering - Tolmach, Appel - 1990
32   Functional programming: application and implementation (context) - Henderson - 1980
30   Tail recursion without space leaks - Jones - 1991
26   A syntactic approach to program transformations - Ariola, June - 1991
26   Generating efficient code for lazy functional languages - Smetsers, Nocker et al. - 1991
26   High-performance parallel graph reduction (context) - Jones, Clack et al. - 1989
24   Efficient compilation of pattern matching (context) - Wadler - 1987
22   The HDG-machine: a highly distributed graph reducer for a tr.. - Kingdon, Lester et al. - 1991
20   Some practical methods for rapid combinator reduction (context) - Stoye, Clarke et al. - 1984
19   Code optimizations for lazy evaluation (context) - Bloss, Hudak et al. - 1988
19   ORBIT - an optimising compiler for Scheme (context) - Kranz - 1988
18   TIM - a simple lazy abstract machine to execute supercombina.. (context) - Fairbairn, Wray - 1987
15   Compilation by program transformation (context) - Kelsey - 1989
13   Combinator graph reduction: a congruence and its application.. (context) - Lester - 1989
13   A modular fully-lazy lambda lifter in Haskell - Jones, Lester - 1991
11   Combining copying and compacting garbage collection (context) - Sansom - 1991
10   A correspondence between Algol 60 and Church's lambda calcul.. (context) - Landin - 1965
8   NORMA - a graph reduction processor (context) - Scheevel - 1986
7   FLIC - a functional language intermediate code (context) - Jones - 1988
7   Compiling lazy functional languages, part II (context) - Augustsson - 1987
6   Continuation-passing, closure-passing style - Appel, Jim - 1989
4   Functional programs as executable specifications (context) - Koopman - 1990
3   A RISC architecture for symbolic computation (context) - Kieburtz - 1987
2   SCHEME to C: a portable Scheme-to-C compiler (context) - Bartlett - 1989
2   How to do machine-independent fast threaded code (context) - Miranda - 1991
2   CASE - a lazy version of an SECD machine with a flat environ.. - Davie, McNally - 1989
2   The Spineless G-machine (context) - Burn, Jones et al. - 1988
1   A new input/output model for purely-functional languages (context) - Hammond, Jones et al. - 1992
1   Generalised expression evaluation (context) - Meijer - 1988
1   Parallel graph reduction with the !nu,G?-machine (context) - Augustsson, Johnsson - 1989
1   Optimising the evaluation of suspensions (context) - Kieburtz, Agapiev - 1988
1   Comm ACM (context) - Ingerman - 1961
1   Using and porting Gnu CC, Version 2.0 (context) - Stallman - 1992
1   The Lazy Functional Abstract Machine (context) - Ireland - 1992



The graph only includes citing articles where the year of publication is known.


Documents on the same site (http://www.esw.inesc.pt/ftp/pub/mirror/ftp.cs.chalmers.se/pub/haskell/papers/glasgow-papers/):   More
Combining Monads - King, Wadler (1992)   (Correct)
Profiling Lazy Functional Languages - Sansom, Jones (1992)   (Correct)
Type Classes In Haskell - Hall, Hammond, Jones, Wadler (1996)   (Correct)

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC