VMs
2025-04-23
Some background re. the development of early VMs (Virtual Machines):
P-code (1973-1974)
- Developed by Niklaus Wirth and team at ETH Zurich
- Released as part of the Pascal-P system
- First major VM designed specifically for portability across different architectures
Tiny BASIC VM (1975-1976)
- Developed by Homebrew Computer Club members
- Released in response to the commercialization of BASIC
- Published in Dr. Dobb's Journal (Li-Chen Wang's version) in May 1976
Smalltalk-80 VM (1980)
- Developed at Xerox PARC by Alan Kay, Dan Ingalls, Adele Goldberg, and team
- First publicly available release of Smalltalk
- Earlier versions existed internally at Xerox PARC since the early 1970s
Relative Timing
P-code came first (early 1970s)
Tiny BASIC VM followed a few years later (mid-1970s)
Smalltalk-80 VM was released last (1980), though its development had been ongoing since the early 1970s
These VMs represent important milestones in the evolution of portable code execution environments that eventually led to modern VMs like the JVM and .NET CLR.
Smalltalk Blue Book containing Part Four which was later removed due to business concerns.
See Also
Email: ptcomputingsimplicity@gmail.com
References: https://guitarvydas.github.io/2024/01/06/References.html
Blog: guitarvydas.github.io
Videos: https://www.youtube.com/@programmingsimplicity2980
Discord: https://discord.gg/65YZUh6Jpq
Leanpub: [WIP] https://leanpub.com/u/paul-tarvydas
Gumroad: tarvydas.gumroad.com
Twitter: @paul_tarvydas
Substack: paultarvydas.substack.com

