turner@ucbesvax.UUCP (02/18/84)
You might take a look at FORTH, which is sort of a virtual stack-machine. Several years of hacking in this low-level language must certainly have yielded a set of stack-manipulation primitives that FORTH writers consider "optimal" for their purposes. This is more than I can say for most computer architectures, little as like FORTH as a language. --- Michael Turner (ucbesvax.turner)
patcl@tekecs.UUCP (Pat Clancy) (02/20/84)
I'm looking for information on stack(-like) machines; ie., some examples of same and possibly brief instruction set descriptions. The object is to discover what operations other than the usual ones have been considered useful for efficiently evaluating complex expressions with these machines. Replies appreciated, and possibly summarized if enough interest. Pat Clancy Tektronix
usenet@abnjh.UUCP (usenet) (02/23/84)
The 'classic' stack machine(s) is (are) the Burroughs B5000 and its descendants, the B5500, B6500, B6700, etc. Get a reference manual for one of them and read it. The operating system (called 'MCP' -- no kidding -- stands for Master Control Program) for them was programmed in Algol 60 (spruced up a bit for systems programming, but basicly Algol.) The compiler did nearly one for one translation of Algol 60 statements into machine instructions. The B5000 had virtual memory long before IBM even heard of the word. That company has been doing things right for a very long time. Incidentally, their lower end machines stand in the same relation to COBOL as the high end machines do for Algol. Another stack machine of some fame is the Pascal P-code pseudo-machine. Western Digital makes a chip set that has P-code as its machine language. They package the chip set as a micro and call it the 'Pascal Engine.' It is said to run the UCSD system at very acceptable speed. Rick Thomas ihnp4!abnjh!usenet or ihnp4!abnji!rbt
husmann@uiuccsb.UUCP (02/28/84)
#R:tekecs:-352300:uiuccsb:5600007:000:229 uiuccsb!husmann Feb 27 18:52:00 1984 The HP3000 is a stack machine. Beyond that, the only thing I recall about it is that the top four words of the stack are actually CPU registers. Harlan Husmann USENET: ...!pur-ee!uiucdcs!husmann CSNET: husmann.uiuc@rand-relay
faiman@uiuccsb.UUCP (02/28/84)
#R:tekecs:-352300:uiuccsb:5600008:000:164
uiuccsb!faiman Feb 27 19:53:00 1984
In answer to rmiller's query, the English Electric stack machine of the 60's
was the KDF9.
>From the ex-Elliott Bros fingers of Mike Faiman (pur-ee!uiucdcs!faiman)
rmiller@ccvaxa.UUCP (02/28/84)
#R:tekecs:-352300:ccvaxa:4700003:000:289 ccvaxa!rmiller Feb 26 18:09:00 1984 just for historical purposes, there were a couple of mid 60's machines built by (i think) English Electric which used stacks, one for argument passing and another for expressions. interesting machines, but not very well known. (anyone in the UK have more on these?) uiucdcs!ccvaxa!rmiller
rob@ctvax.UUCP (03/01/84)
#R:tekecs:-352300:ctvax:32800001:000:435 ctvax!rob Feb 28 13:41:00 1984 One British machine was the KDF-9. There was a special issue of IEEE Computer several years ago on Stack Machines. I recall it contained articles on at least the KDF-9, the B5000 and the HP-3000. Rob Spray US Mail: Computer*Thought Corporation, 1721 West Plano Parkway,Plano Tex. 75075 BellTel: 214-424-3511 ARPAnet: ROB.CT@RAND-RELAY CSNet: ROB@CT uucp: ... {decvax!cornell!|ucbvax!nbires!|allegra!parsec!}ctvax!rob
phil@unisoft.UUCP (Phil Ronzone) (03/01/84)
Well - I microcoded and did part of the design for a C stack machine. It had some nice ideas, as the other designer was Marv Rubinstein, one of the world's most experienced compiler writers / machine designers (did Fortran II in '61, microcoded a 7094 look-alike). If you send me 8.5 by 11 envelope or mag tape, I'll send you the 350 page manual. It was done at (now defunct) Delphi Comm. (part of EXXON!). Delphi had an ``association'' of some type with TANDEM (non-stop computers) and had very similar bus architecture. It was a 32-bit machine, optimized for Pascal and C. We did some clever things (good solution to Pascal display register problem) etc.
smith@umn-cs.UUCP (Richard Smith) (03/03/84)
#R:tekecs:-352300:umn-cs:13900007:000:287 umn-cs!smith Feb 27 19:42:00 1984 There was another old 'stack machine' built in England sometime in the past decade or two called the KDF-9. I remember seeing a writeup about it in some compendium of comparative architecture papers at some point (Computing Surveys? Bell-Newell[-Sieworcek]? I don't remember). Rick.
wmb@sun.uucp (Mitch Bradley) (03/07/84)
Charles Moore, the inventor of FORTH, is building a FORTH machine. He described it a the FORTH Modification Laboratory conference at Asilomar last November. Unfortunately, his presentation was verbal, and there was not a written version in the conference proceedings. Basically his is an ECL processor with 2 hardware stacks, one for passing arguments and the other for holding return addresses for subroutines (FORTH programmers will recognize this architecture as closely resembling the FORTH virtual machine). Both the top-of-stack and the second-on-stack are instantly accessible (i.e. in one microcycle) for both stacks. The machine is microcoded in such a way that FORTH code may be easily compiled into a near-optimal set of microinstructions. The mapping is interesting. In one particular case, a sequence of 5 FORTH operations compiles into a single microinstruction. In November, he showed the film for his PC board, which he had just gotten back from the photo house. He expects the first rev of the computer to run with a 16 nsec. microcycle time. He did all of the design work on a home-brew CAD system (written in FORTH of course) which was pretty impressive, but not general purpose. It runs on an 11/23, and does layout, simulation, timing analysis, etc. Mitch Bradley Sun Microsystems, Inc.