# Gems of Corrado B\"ohm

@article{Barendregt2018GemsOC, title={Gems of Corrado B\"ohm}, author={HENK P. Barendregt}, journal={arXiv: Logic in Computer Science}, year={2018} }

The main scientific heritage of Corrado Bohm consists of ideas about computing, concerning concrete algorithms, as well as models of computability. The following will be presented. 1. A compiler that can compile itself. 2. Structured programming, eliminating the 'goto' statement. 3. Functional programming and an early implementation. 4. Separability in {\lambda}-calculus. 5. Compiling combinators without parsing. 6. Self-evaluation in {\lambda}-calculus.

## References

SHOWING 1-10 OF 46 REFERENCES

### A Self-Interpreter of Lambda Calculus Having a Normal Form

- Mathematics, Computer ScienceCSL
- 1992

The notion of a canonical algebraic term rewriting system can be interpreted in the lambda calculus by the Bohm — Piperno technique in such a way that strong normalization is preserved and allows us to improve some recent results of Mogensen concerning efficient godelizations.

### The Mechanical Evaluation of Expressions

- Computer ScienceComput. J.
- 1964

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.

### Theoretical Pearls Enumerators of lambda terms are reducing

- MathematicsJournal of Functional Programming
- 1992

An ingenious recursion theoretic proof by Statman will be presented, showing that every enumerator is reducing, but I do not know any direct proof.

### The lambda calculus - its syntax and semantics

- MathematicsStudies in logic and the foundations of mathematics
- 1985

### Discriminating Coded Lambda Terms

- Mathematics
- 2001

A coding for a (type-free) lambda term M is a lambda term ⌜M⌝ in normal form such that M (and its parts) can be reconstructed from ⌜M⌝ in a lambda definable way. Kleene (1936) defined a coding ⌜M⌝K}…

### The imperative and functional programming paradigm

- Computer Science
- 2013

Major advantages of the functional programming paradigm over the imperative one, that are applicable, provided one is has the mental capacity to explicitly deal with simple abstractions, are presented.

### Higher-order abstract syntax

- Computer SciencePLDI '88
- 1988

Higher-order abstract syntax incorporates name binding information in a uniform and language generic way and acts as a powerful link integrating diverse tools in program manipulation and other formal systems where matching and substitution or unification are central operations.

### The Böhm-Jacopini Theorem Is False, Propositionally

- MathematicsMPC
- 2008

A purely propositional account of the Bohm---Jacopini theorem, which states that any deterministic flowchart program is equivalent to a while program, and reformulate the problems at the propositional level in terms of automata on guarded strings, the automata-theoretic counterpart to Kleene algebra with tests.