2009
DOI: 10.1017/s0956796808006746
|View full text |Cite
|
Sign up to set email alerts
|

From natural semantics to C: A formal derivation of two STG machines

Abstract: The Spineless Tag-less G-machine (STG machine) was defined as the target abstract machine for compiling the lazy functional language Haskell. It is at the heart of the Glasgow Haskell Compiler (GHC) which is claimed to be the Haskell compiler that generates the most efficient code. A high-level description of the STG machine can be found in Peyton ). Should the reader be interested in a more detailed view, then the only additional information available is the Haskell code of GHC and the C code of its runtime s… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
6
0

Year Published

2009
2009
2016
2016

Publication Types

Select...
5
2

Relationship

1
6

Authors

Journals

citations
Cited by 11 publications
(6 citation statements)
references
References 18 publications
0
6
0
Order By: Relevance
“…The PE STG machine is in reality a hybrid machine, which is apparent in its original, three-stack formulation [9]: the machine is PE in the argument stack, but it is EA in the return and update stacks. The equivalence of two simpler variants of the EA and PE STG machines has been shown by Encina and Peña [8] by deriving both machines from a single natural semantics. Piróg and Biernacki [13] used a technique based on Danvy's functional correspondence to derive the PE STG machine from a big-step operational semantics.…”
Section: Discussionmentioning
confidence: 95%
“…The PE STG machine is in reality a hybrid machine, which is apparent in its original, three-stack formulation [9]: the machine is PE in the argument stack, but it is EA in the return and update stacks. The equivalence of two simpler variants of the EA and PE STG machines has been shown by Encina and Peña [8] by deriving both machines from a single natural semantics. Piróg and Biernacki [13] used a technique based on Danvy's functional correspondence to derive the PE STG machine from a big-step operational semantics.…”
Section: Discussionmentioning
confidence: 95%
“…As described in Section 4, this type-and-effect system successfully produces resource bounds for examples that could not previously be analysed. Our cost model is based on Launchbury's natural semantics for lazy evaluation [5], as subsequently refined by Sestoft [4], de la Encina and Peña-Marì [10,11]. The proof technique used in Section 5.6 for establishing correspondence between the indirections semantics and the standard one is based on work by Sánchez-Gil, Hidalgo-Herrero and Ortega-Mallén [9].…”
Section: Soundness Of the Proof Systemmentioning
confidence: 99%
“…As described above, we build heavily on Launchbury's natural semantics for lazy evaluation [30], as subsequently adapted by Sestoft, and exploit ideas that were developed by de la Encina and Peña-Marí [14,15]. There is a significant body of other work on the semantics of call-by-need evaluation.…”
Section: Related Workmentioning
confidence: 99%