|
ABSTRACT
We study contexts (terms with holes) by proposing a 'λ-calculus with holes'. It is very expressive and can encode programming constructs apparently unrelated to contexts, including objects and algorithms in partial evaluation. We give proofs of confluence, preservation of strong normalisation, principal typing for an ML-style Hindley-Milner type system, and an applicative characterisation of contextual equivalence. We explore the limitations of the calculus including further applications, and discuss how they might be tackled.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
|
| |
3
|
H. P. Barendregt, The lambda calculus: its syntax and semantics (revised ed.), Studies in Logic and the Foundations of Mathematics, vol. 103, North-Holland, 1984.
|
| |
4
|
John Bell and Moshé Machover, A course in mathematical logic, North-Holland, 1977.
|
 |
5
|
Gavin Bierman , Michael Hicks , Peter Sewell , Gareth Stoyle , Keith Wansbrough, Dynamic rebinding for marshalling and update, with destruct-time ?, Proceedings of the eighth ACM SIGPLAN international conference on Functional programming, p.99-110, August 25-29, 2003, Uppsala, Sweden
|
| |
6
|
Roel Bloo and Kristoffer Høgsbro Rose, Preservation of strong normalisation in named lambda calculi with explicit substitution and garbage collection, CSN-95: Computer Science in the Netherlands, 1995.
|
| |
7
|
Mirna Bognar, Contexts in lambda calculus, Ph.D. thesis, Vrije Universiteit Amsterdam, 2002.
|
| |
8
|
Charles Consel and Olivier Danvy, Partial evaluation: Principles and perspectives, Journées Francophones des Langages Applicatifs, February 1993, pp. 493--501.
|
 |
9
|
|
| |
10
|
|
| |
11
|
Maribel Fernández and Murdoch J. Gabbay, Extensions of nominal rewriting, PPDP, 2005.
|
| |
12
|
Murdoch J. Gabbay, a-logic, Submitted, 2005.
|
| |
13
|
Murdoch J. Gabbay and A. M. Pitts, A new approach to abstract syntax with variable binding, Formal Aspects of Computing 13 (2001), 341--363.
|
| |
14
|
M. Hamana, Free sigma-monoids: A higher-order syntax with metavariables, The Second Asian Symposium on Programming Languages and Systems (APLAS 2004), Lecture Notes in Computer Science, vol. 3202, 2004, pp. 348--363.
|
| |
15
|
|
| |
16
|
Peyton Jones, Tackling the awkward squad: monadic input/output, concurrency, exceptions, and foreign-language calls in haskell, Engineering theories of software construction, Marktoberdorf Summer School, NATO ASI, 105 Press, 2001, pp. 47--96.
|
 |
17
|
|
 |
18
|
|
 |
19
|
|
| |
20
|
|
| |
21
|
Ian Mackie Maribel Fernández, Murdoch J. Gabbay, Nominal rewriting, Submitted, January 2004.
|
| |
22
|
Masahiko Sato , Takafumi Sakurai , Rod Burstall, Explicit environments, Fundamenta Informaticae, v.45 n.1,2, p.79-115, Jan.2001
|
| |
23
|
|
| |
24
|
|
| |
25
|
|
| |
26
|
|
| |
27
|
Larry Paulson, The Isabelle reference manual, Cambridge University Computer Laboratory, February 2001.
|
| |
28
|
A. M. Pitts and T. Sheard, On the denotational semantics of staged execution of open code, Submitted, February 2004.
|
| |
29
|
|
| |
30
|
|
| |
31
|
Masahiko Sato, Takafumi Sakurai, Yukiyoshi Kameyama, and Atsushi Igarashi, Calculi of meta-variables, Computer Science Logic and 8th Kurt Gödel Colloquium (CSL'03 & KGC), Vienna, Austria. Proccedings (M. Baaz, ed.), Lecture Notes in Computer Science, vol. 2803, 2003, pp. 484--497.
|
 |
32
|
|
| |
33
|
Francois Maurel Sylvain Baro, The qnu and qnuk calculi: name capture and control, Tech. report, Université Paris VII, March 2003, Extended Abstract, Prépublication PPS//03/11//n°16.
|
| |
34
|
Laurence Tratt, Compile-time meta-programming in converge, Tech. Report TR-04-11, Department of Computer Science, King's College London, December 2002.
|
| |
35
|
|
| |
36
|
Vincent van Oostrom, Confluence for abstract and higher-order rewriting, Ph.D. thesis, Vrije Universiteit, Amsterdam, March 29 1994.
|
|