Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Carsten K. Gomard

dblp:31/1216 · DBLP profile ↗
← Back
5ranked-venue papers
3as first author
0since 2021 · last 1992
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 5 · 3 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Compilers and program optimization · 50% Programming languages and type systems · 50%

Topics — the 2 heaviest of 2, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Programming languages and type systems
lambda calculus
0.011992
A Self-Applicable Partial Evaluator for the Lambda Calculus: Correctness and Pragmatics · ACM Trans. Program. Lang. Syst. 1992
Compilers and program optimization
partial evaluation
0.011992
A Self-Applicable Partial Evaluator for the Lambda Calculus: Correctness and Pragmatics · ACM Trans. Program. Lang. Syst. 1992

Methods — techniques the papers use, named apart from their topics

correctness proof · 0.0binding-time analysis · 0.0
YearPublicationVenuePosition
1992 Speedup Analysis in Partial Evaluation: Preliminary Results
Lars Ole Andersen, Carsten K. Gomard
PEPM2
1992 A Self-Applicable Partial Evaluator for the Lambda Calculus: Correctness and Pragmatics
abstract
We describe theoretical and a few practical aspects of an implemented self-applicable partial evaluator for the untyped lambda calculus with constants, conditionals, and a fixed point operator. The purpose of this paper is first to announce the existence of (and to describe) a partial evaluator that is both higher-order and self-applicable; second to describe a surprisingly simple solution to the central problem of binding time analysis, and third to prove that the partial evaluator yields correct answers. While λ-mix (the name of our system) seems to have been the first higher-order self-applicable partial evaluator to run on a computer, it was developed mainly for research purposes. Two recently developed systems are much more powerful for practical use, but also much more complex: Similix[3,5] and Schism[7]. Our partial evaluator is surprisingly simple, completely automatic, and has been implemented in a side effect-free subset of Scheme. It has been used to compile, generate compilers and generate a compiler generator.
Carsten K. Gomard
ACM Trans. Program. Lang. Syst.1
1991 Globalization and Live Variables
abstract
Datalogi, programanalyse, programtransformation
Carsten K. Gomard, Peter Sestoft
PEPM1
1991 Partial Evaluation is Fuller Laziness
abstract
article Partial evaluation is fuller laziness Share on Authors: Carsten Kehler Holst Department of Computing Science, University of Glasgow Department of Computing Science, University of GlasgowView Profile , Darsten Krogh Gomard DIKU, Department of Computer Science, University of Copenhagen DIKU, Department of Computer Science, University of CopenhagenView Profile Authors Info & Claims ACM SIGPLAN NoticesVolume 26Issue 9Sept. 1991 pp 223–233https://doi.org/10.1145/115866.115890Online:01 May 1991Publication History 25citation301DownloadsMetricsTotal Citations25Total Downloads301Last 12 Months4Last 6 weeks1 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteGet Access
Carsten Kehler Holst, Carsten K. Gomard
PEPM2
1991 A Partial Evaluator for the Untyped lambda-Calculus
abstract
Abstract This article describes theoretical and practical aspects of an implemented self-applicable partial evaluator for the untyped lambda-calculus with constants and a fixed point operator. To the best of our knowledge, it is the first partial evaluator that is simultaneously higher-order, non-trivial, and self-applicable. Partial evaluation produces a residual program from a source program and some of its input data. When given the remaining input data the residual program yields the same result that the source program would when given all its input data. Our partial evaluator produces a residual lambda-expression given a source lambda-expression and the values of some of its free variables. By self-application, the partial evaluator can be used to compile and to generate stand-alone compilers from a denotational or interpretive specification of a programming language. An essential component in our self-applicable partial evaluator is the use of explicit binding time information. We use this to annotate the source program, marking as residual the parts for which residual code is to be generated and marking as eliminable the parts that can be evaluated using only the data that is known during partial evaluation. We give a simple criterion, well-annotatedness, that can be used to check that the partial evaluator can handle the annotated higher-order programs without committing errors. Our partial evaluator is simple, is implemented in a side-effect free subset of Scheme, and has been used to compile and to generate compilers and a compiler generator. In this article we examine two machine-generated compilers and find that their structures are surprisingly natural.
Carsten K. Gomard, Neil D. Jones
J. Funct. Program.1