Christopher Strachey—Understanding Programming Languages

  title={Christopher Strachey—Understanding Programming Languages},
  author={Rod M. Burstall},
  journal={Higher-Order and Symbolic Computation},
  • R. Burstall
  • Published 1 April 2000
  • Computer Science
  • Higher-Order and Symbolic Computation
Optimization of Executable Formal Interpreters Developed in Higher-Order Logic Theorem Proving Systems
This paper identifies three root causes of the low execution efficiency of formal interpreters, builds abstract models of these causes, and presents respective optimization schemes for rectifying the identified conditions and applies these optimization schemes to FEther, demonstrating that its execution efficiency has been improved significantly.
Extending Answer Set Programs with Interpreted Functions as First-Class Citizens
This paper proposes the declarative language of hex-programs which extends answer set programs (ASP) with interpreted functions, which further turns interpreted functions into first-class citizens, i.e., functions are represented by accessible objects in the program.
HASKEU: An editor to support visual and textual programming in tandem
This paper argues that an editor that offers both a visual and a textual representation of the program in tandem has advantages to offer both learner and expert programmers and describes the editor, HASKEU, which embodies this principle.
The Origin and Nature of Life on Earth: The Emergence of the Fourth Geosphere
Uniting the conceptual foundations of the physical sciences and biology, this groundbreaking multidisciplinary book explores the origin of life as a planetary process. Combining geology,
The Python Programming Language as a Focal Point for Converging Research and DevOps Processes in the IDL Infrastructure
Advantages of employing Python as a central software tool at the Institute of Air Transport Systems are detailed and its features in relation to other languages are discussed.
A programming system for end-user functional programming
This research involves the construction of a programming system, HASKEU, to support end-user programming in a purely functional programming language, using the elegant Functional Reactive Programming (FRP) framework.
Semantic methods for functional hybrid modelling
A refined type system for FHM capable of capturing a larger number of structural anomalies than is currently possible with existing methods is developed, and a compositional semantics for the discrete aspects of FHM is constructed, to prove a number of key correctness properties.
Applying Dependency Injection to Agent-Based Modeling: the JABM Toolkit
An overview of agent-based modelling with an emphasis on its application to multi-agent systems research is given, and a design pattern called “dependency injection” can be used to implement highly configurable simulation models which are able to incorporate various assumptions about agents’ rationality and learning.
Extensible Languages: Blurring the Distinction between DSL and GPL
The purpose of this chapter is to provide a tour of the features that make a GPL extensible, and to demonstrate how the distinction between DSL and GPL can blur, sometimes to the point of complete disappearance.
Psi-CAL: Foundations of a Programming Language for Services Computing
This paper formalizes the notion of services as first class entities through a typed calculus, called Psi-CAL, which models major operations for service manipulation including creation, discovery, and invocation as well as establishing relationships among services.


Proving Theorems about LISP Functions
We describe some simple heuristics combining evaluation and mathematical induction which we have implemented in a program that automatically proves a wide variety of theorems about recursive LISP
Correspondence between ALGOL 60 and Church's Lambda-notation
A model for computer languages and computer behavior is described, based on the notions of functional application and functional abstraction, but also having analogues for imperative language features.
The Mechanical Evaluation of Expressions
It is shown how some forms of expression in current programming languages can be modelled in Church's X-notation, and a way of "interpreting" such expressions is described, which suggests a method of analyzing the things computer users write.