Ponder and its type system

Jon Fairbairn · CL Technical Reports · 2021

This note describes the programming language “Ponder”, which is designed according to the principles of referential transparency and “orthogonality” as in [vWijngaarden 75]. Ponder is designed to be simple, being functional with normal order semantics. It is intended for writing large programmes, and to be easily tailored to a particular application. It has a simple but powerful polymorphic type system. The main objective of this note is to describe the type system of Ponder. As with the whole of the language design, the smallest possible number of primitives is built in to the type system. Hence for example, unions and pairs are not built in, but can be constructed from other primitives.

Read the paper · More papers on PaperTik