History of Poplar
Paul McJones, editor
paul@mcjones.org
https://mcjones.org/dustydecks/
Last modified 28 September 2025
Introduction
The goal of this project is to preserve and present primary and secondary source materials (including specifications, source code, manuals, and papers discussing design and implementation) from Poplar, a functional programming language designed at Xerox PARC in the late 1970s. The editor greatly appreciates comments, suggestions, and donations of additional materials.
Contents
Acknowledgments
Thanks to James H. Morris, Jr., the primary designer of Poplar, for giving me permission to post the manual, source code, and paper here.
Source code
- James H. Morris and Eric Schmidt. Poplar source code. Written in Mesa, circa 1977-1978.
This version uses call-by-value.
PDF
- James H. Morris, Eric Schmidt, and Philip Wadler. Poplar source code. Written in Mesa, circa 1977-1979.
This version uses lazy evaluation (call-by-need), as described in [Morris, Schmidt, and Wadler 1980]. PDF
- James H. Morris, Eric Schmidt, Phil Wadler. Poplar source code with some modifications for Cedar Mesa by Ed Satterthwaite, circa April 1986.
online
Poplar programs
- Morris et al. Poplar examples. ex.pl, ex1.pl, ..., ex8.pl.
PDF
Documentation
- Jim Morris and Eric Schmidt. Poplar. Draft language manual, 4 October 1978, 38 pages.
PDF
Papers
- James H. Morris, Eric Schmidt, and Philip Wadler. Experience with an applicative string processing language.
In Proceedings of the 7th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
(POPL '80). Association for Computing Machinery, New York, NY, USA, 32–46.
ACM Digital Library /
PDF