PAL (programming language)

From Wikipedia, the free encyclopedia

PAL, the Pedagogic Algorithmic Language, is a programming language developed at the Massachusetts Institute of Technology in around 1967 to help teach programming language semantics and design.[1][2] It is a "direct descendant" of ISWIM and owes much of its philosophy to Christopher Strachey.[3]

DesignedbyOriginal:
Peter Landin,
James H. Morris, Jr.
Redesign:
Martin Richards, Thomas J. Barkalow, Arthur Evans, Jr., Robert M. Graham, James Morris, John Wozencraft
Firstappeared1967; 59 years ago (1967)
Quick facts Pedagogic Algorithmic Language (PAL), Paradigms ...
Pedagogic Algorithmic Language (PAL)
Paradigmsfunctional, imperative
Designed byOriginal:
Peter Landin,
James H. Morris, Jr.
Redesign:
Martin Richards, Thomas J. Barkalow, Arthur Evans, Jr., Robert M. Graham, James Morris, John Wozencraft
DeveloperMassachusetts Institute of Technology
First appeared1967; 59 years ago (1967)
Final release
RPAL 0.2.0-rc1 / 4 October 2006; 19 years ago (2006-10-04)
Typing disciplinedynamic
Scopelexical
Implementation languageOriginal: Lisp
Redesign: BCPL
PlatformIBM 7090, 7094; System/360
OSCompatible Time-Sharing System, BOS/360, TOS/360, DOS/360, OS/360
Websiterpal.sourceforge.net
Dialects
Right-reference Pedagogic Algorithmic Language (RPAL)
Influenced by
ISWIM
Close

The initial implementation of PAL, in Lisp, was written by Peter Landin and James H. Morris, Jr. and ran on the Compatible Time-Sharing System (CTSS). It was later redesigned by Martin Richards, Thomas J. Barkalow, Arthur Evans, Jr., Robert M. Graham, James Morris, and John Wozencraft. It was implemented by Richards and Barkalow in BCPL as an intermediate-code interpreter and ran on the IBM System/360; this was called PAL/360.[4]

RPAL

The Right-reference Pedagogic Algorithmic Language (RPAL), is a functional programming subset of PAL with an implementation on SourceForge.[5] It is used at the University of Florida to teach the construction of programming languages and functional programming. Programs are strictly functional, with no sequence or assignment operations.

References

Related Articles

Wikiwand AI