Results

**1 - 4**of**4**### Functions, Frames, and Interactions -- completing a λ-calculus-based purely functional language with respect to programming-in-the-large and interactions with runtime environments

, 1998

"... The original aim of the work that led to this dissertation was to extend an existing, purely functional language with facilities for input/output and modular programming. The language is based on an untyped -calculus, i.e., program execution is defined as program transformation according to a fixed ..."

Abstract
- Add to MetaCart

The original aim of the work that led to this dissertation was to extend an existing, purely functional language with facilities for input/output and modular programming. The language is based on an untyped -calculus, i.e., program execution is defined as program transformation according to a fixed set of reduction rules including fi-reduction. Consistently, the implementation comprises an interactive reduction system which is integrated with a syntax-oriented editor: any sub-expression or program result can be submitted for (stepwise) reduction. There is no distinguished main program, no `global' environment and no explicit static part of the language -- in particular, there is no static type system. It is therefore not clear how to add one of the known solutions for input/output or modular programming to such a programming environment. Furthermore, simply adding features to the language would lead to a complex language design with weakly integrated parts, thus losing much of the appe...

### CHRISTIAN-ALBRECHTS-UNIVERSITÄT

, 1998

"... completing a-calculus-based purely functional language with respect to programming-in-the-large and interactions with runtime environments ..."

Abstract
- Add to MetaCart

(Show Context)
completing a-calculus-based purely functional language with respect to programming-in-the-large and interactions with runtime environments

### unknown title

"... Abstract. We make the notion of scope in the λ-calculus explicit. To that end, the syntax of the λ-calculus is extended with an end-of-scope, matching the usual opening of a scope due to λ. Accordingly, β-reduction is extended to the set of scoped λ-terms by performing minimal scope extrusion before ..."

Abstract
- Add to MetaCart

(Show Context)
Abstract. We make the notion of scope in the λ-calculus explicit. To that end, the syntax of the λ-calculus is extended with an end-of-scope, matching the usual opening of a scope due to λ. Accordingly, β-reduction is extended to the set of scoped λ-terms by performing minimal scope extrusion before performing replication as usual. We show confluence of the resulting scoped β-reduction. Confluence of β-reduction for the ordinary λ-calculus is obtained as a corollary, by extruding scopes maximally before forgetting them altogether. Only in this final forgetful step, α-equivalence is needed. All our proofs have been verified in Coq. operatorλ 1

### pi-RED+: A Compiling Graph-Reduction System for a Full-Fledged lambda-Calculus

, 1992

"... This paper describes a compiling graph reduction system which performs high--level program transformations governed by the reduction rules of an untyped applied --calculus. In contrast to other well--known graph reducers, our system completely implements the reduction semantics of a full--fledged ..."

Abstract
- Add to MetaCart

This paper describes a compiling graph reduction system which performs high--level program transformations governed by the reduction rules of an untyped applied --calculus. In contrast to other well--known graph reducers, our system completely implements the reduction semantics of a full--fledged --calculus. This renders it possible to support higher--order functions without any restrictions. Functions may be computed by applications of functions to other functions or by partial applications and are returned to the user as high--level programs. Also, programs may be executed in a step--by--step manner under interactive control. All intermediate results are presented to the user as high--level programs. Stepwise program execution provides a convenient high--level debugging facility. In order to execute programs with competitive speed, we have developed an abstract stack machine ASP, which gives special support to some key techniques for the execution of untyped functional lan...