The next 700 formal language descriptions
Lisp and Symbolic Computation - Special issue on continuations—part I
A bonus from van Wijngaarden's device
Communications of the ACM
GEDANKEN—a simple typeless language based on the principle of completeness and the reference concept
Communications of the ACM
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
Correspondence between ALGOL 60 and Church's Lambda-notation: part I
Communications of the ACM
The next 700 programming languages
Communications of the ACM
Recursive functions of symbolic expressions and their computation by machine, Part I
Communications of the ACM
Implementation and applications of Scott's logic for computable functions
Proceedings of ACM conference on Proving assertions about programs
Proceedings of ACM conference on Proving assertions about programs
PAL—a language designed for teaching programming linguistics
ACM '68 Proceedings of the 1968 23rd ACM national conference
The Calculi of Lambda Conversion. (AM-6) (Annals of Mathematics Studies)
The Calculi of Lambda Conversion. (AM-6) (Annals of Mathematics Studies)
A unifying approach to goal-directed evaluation
New Generation Computing - Partial evaluation and program transformation
Definitional Interpreters Revisited
Higher-Order and Symbolic Computation
CPS Translations and Applications: The Cube and Beyond
Higher-Order and Symbolic Computation
Comparing Control Constructs by Double-Barrelled CPS
Higher-Order and Symbolic Computation
Higher-Order and Symbolic Computation
Design and Correctness of Program Transformations Based on Control-Flow Analysis
TACS '01 Proceedings of the 4th International Symposium on Theoretical Aspects of Computer Software
A First-Order One-Pass CPS Transformation
FoSSaCS '02 Proceedings of the 5th International Conference on Foundations of Software Science and Computation Structures
Forwarding in Attribute Grammars for Modular Language Design
CC '02 Proceedings of the 11th International Conference on Compiler Construction
Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming
A functional correspondence between evaluators and abstract machines
Proceedings of the 5th ACM SIGPLAN international conference on Principles and practice of declaritive programming
Polymorphic typed defunctionalization
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A first-order one-pass CPS transformation
Theoretical Computer Science
Locus Solum: From the rules of logic to the logic of rules
Mathematical Structures in Computer Science
Producing all ideals of a forest, functionally
Journal of Functional Programming
Cost-Augmented Partial Evaluation of Functional Logic Programs
Higher-Order and Symbolic Computation
A functional correspondence between call-by-need evaluators and lazy abstract machines
Information Processing Letters
Transformation by interpreter specialisation
Science of Computer Programming - Special issue on program transformation
Journal of Functional Programming
Fast narrowing-driven partial evaluation for inductively sequential programs
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
On the dynamic extent of delimited continuations
Information Processing Letters
Verification of executable pipelined machines with bit-level interfaces
ICCAD '05 Proceedings of the 2005 IEEE/ACM International conference on Computer-aided design
Polymorphic typed defunctionalization and concretization
Higher-Order and Symbolic Computation
First-class nonstandard interpretations by opening closures
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Theoretical Computer Science - Applied semantics: Selected topics
Metamorphisms: Streaming representation-changers
Science of Computer Programming
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
A syntactic correspondence between context-sensitive calculi and abstract machines
Theoretical Computer Science
Analyzing the environment structure of higher-order languages using frame strings
Theoretical Computer Science
Understanding Programming Languages
Minds and Machines
State-transition machines, revisited
Higher-Order and Symbolic Computation
Jones optimality and hardware virtualization: a report on work in progress
PEPM '08 Proceedings of the 2008 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Information Processing Letters
Inter-deriving Semantic Artifacts for Object-Oriented Programming
WoLLIC '08 Proceedings of the 15th international workshop on Logic, Language, Information and Computation
Flattening tuples in an SSA intermediate representation
Higher-Order and Symbolic Computation
A Transformational Approach to Polyvariant BTA of Higher-Order Functional Programs
Logic-Based Program Synthesis and Transformation
DSL '09 Proceedings of the IFIP TC 2 Working Conference on Domain-Specific Languages
On the dynamic extent of delimited continuations
Information Processing Letters
Tagging, encoding, and jones optimality
ESOP'03 Proceedings of the 12th European conference on Programming
A new one-pass transformation into monadic normal form
CC'03 Proceedings of the 12th international conference on Compiler construction
Deriving compilers and virtual machines for a multi-level language
APLAS'07 Proceedings of the 5th Asian conference on Programming languages and systems
A unifying approach to goal-directed evaluation
SAIG'01 Proceedings of the 2nd international conference on Semantics, applications, and implementation of program generation
Inter-deriving semantic artifacts for object-oriented programming
Journal of Computer and System Sciences
A systematic derivation of the STG machine verified in Coq
Proceedings of the third ACM Haskell symposium on Haskell
Avalanche-safe LINQ compilation
Proceedings of the VLDB Endowment
Thirteen new players in the team: a FERRY-based LINQ to SQL provider
Proceedings of the VLDB Endowment
Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation
Subtyping delimited continuations
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
Contracts as pairs of projections
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
Control-flow analysis of function calls and returns by abstract interpretation
Information and Computation
A rational deconstruction of landin's SECD machine
IFL'04 Proceedings of the 16th international conference on Implementation and Application of Functional Languages
MPC'06 Proceedings of the 8th international conference on Mathematics of Program Construction
Swapping arguments and results of recursive functions
MPC'06 Proceedings of the 8th international conference on Mathematics of Program Construction
IFL'05 Proceedings of the 17th international conference on Implementation and Application of Functional Languages
Automatic testing of higher order functions
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
Testing polymorphic properties
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
Control-flow analysis of functional programs
ACM Computing Surveys (CSUR)
Theoretical Computer Science
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
Functional semantics of parsing actions, and left recursion elimination as continuation passing
Proceedings of the 14th symposium on Principles and practice of declarative programming
A structural soundness proof for shivers's escape technique: a case for galois connections
SAS'12 Proceedings of the 19th international conference on Static Analysis
Optimizing abstract abstract machines
Proceedings of the 18th ACM SIGPLAN international conference on Functional programming
An operational foundation for the tactic language of Coq
Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming
Hi-index | 0.00 |
Higher-order programming languages (i.e., languages inwhich procedures or labels can occur as values) are usually definedby interpreters that are themselves written in a programming languagebased on the lambda calculus (i.e., an applicative language such aspure LISP). Examples include McCarthy‘s definition of LISP, Landin‘sSECD machine, the Vienna definition of PL/I, Reynolds‘ definitions ofGEDANKEN, and recent unpublished work by L. Morris and C. Wadsworth.Such definitions can be classified according to whether theinterpreter contains higher-order functions, and whether the order ofapplication (i.e., call by value versus call by name) in the definedlanguage depends upon the order of application in the defininglanguage. As an example, we consider the definition of a simpleapplicative programming language by means of an interpreter writtenin a similar language. Definitions in each of the aboveclassifications are derived from one another by informal butconstructive methods. The treatment of imperative features such asjumps and assignment is also discussed.