PLEX86  x86- Virtual Machine (VM) Program
 Plex86  |  CVS  |  Mailing List  |  Download  |  Computer Folklore

History: How did Forth get its stacks

MTS, Emacs, and... WYLBUR
Doing some web searching, I found that at CERN, they used something developed at SLAC to make the use of their IBM 370 mainframe computers more bearable than with JCL. This...

On 18-7-06 13:20, in article


Turing, A. M. "Proposals for the development in the Mathematics Division of an Automatic Computing Engine (ACE)." Report E882, Executive Committee, NPL February 1946. (Reprinted April 1972 as NPL Report Com. Sci 57.)

Turing describes the use of a subroutine RA stack, with PUSH RA called 'BURY' and POP RA called 'UNBURY", implemented in his proposed ACE instruction set (which was effectively user microprogramming in today's terms).

True with exceptions. The English Electric KDF9 ca.1960-61 had a 16-deep return address stack (along with a a 16-deep arithmetic stack and a bank of 16 counting-indexing registers) for each of 4 processes, driven by blocking and unblocking on I-O transfer termination status, and implemented entirely in hardware.

The Burroughs B5000 from the same era had an unbounded activation stack managed in core by the hardware.

"Modern-textbook-style recursion" based on an activation stack (usually software-managed) was a feature of Algol 60 and its many successors and derivatives implemented during the 1960s, including PL-1, Algol 68, Algol W, Pascal, CPL, BCPL, ... (we can all see where that is heading, I guess 8-).

MTS, Emacs, and... WYLBUR
a lot of stuff was similarly done for XEDIT ... especially in conjunction with various amount of REX(X) programming...

-- Bill Findlay

List | Previous | Next

MTS, Emacs, and... WYLBUR

Alt Folklore Computers Newsgroups

History: How did Forth get its stacks 4025