Category Archives: programming languages

Why is lambda calculus named after that specific Greek letter? Do not believe the rumours!

A common myth in theoretical computer science is that the ‘λ’ in λ-calculus comes from some kind of typographical error, where the intended notation was a circumflex accent ŷ.M, which became a caret ^y.M then finally a lambda λy.M. At … Continue reading

Posted in General, programming languages, teaching | Leave a comment

So what is a “pure programming language” anyway?

This is one of those questions that is inflammatory enough to start a flame war, so it should make a good title for a blog post. But instead of feeding the flames I want to pour some water or whatever … Continue reading

Posted in programming languages, system level semantics | Leave a comment

Leaving the Nest: variables with interleaving scopes

A paper [PDF] with this title, co-written with Jamie Gabbay and Daniela Petrişan, will appear in Computer Science Logic (CSL 2015). Actually the full title is Leaving the Nest: Nominal techniques for variables with interleaving scopes. The “nominal techniques” part is in reference … Continue reading

Posted in programming languages | Leave a comment

Types: computation vs. interaction

Type Theory is at the moment the workhorse of programming language theory. It is an elegant, clever and incredibly useful framework for thinking about programming (for full disclosure, I have written several papers with the word “type” in the title). … Continue reading

Posted in programming languages | 1 Comment

Two views of programming language design

In computer science, the Boolean or logical data type is a data type, having two values (usually denoted true and false), intended to represent the truth values of logic and Boolean algebra. [Wikipedia] In computer science, a tagged union, also called a variant, variant record, discriminated union, disjoint union, or sum type, is a data structure used to hold a value that could … Continue reading

Posted in programming languages | 2 Comments