[HN Gopher] The Lisp Implementafion for the PDP-1 Computer [pdf] ___________________________________________________________________ The Lisp Implementafion for the PDP-1 Computer [pdf] Author : abrax3141 Score : 57 points Date : 2022-05-19 17:10 UTC (5 hours ago) (HTM) web link (s3data.computerhistory.org) (TXT) w3m dump (s3data.computerhistory.org) | jonjacky wrote: | Peter Deutsch finished this when he was 17 years old. | | https://en.wikipedia.org/wiki/L._Peter_Deutsch | lisper wrote: | Not sure which is more impressive, that, or the fact that this | Lisp ran in under 4k of RAM. | phtrivier wrote: | No idea what the arch of a PDP would be like; but the manual | mentions 4096 "registers". Would those register actually | correspond to memory words in a more modern arch ? Was it | possible in assembly to directly address each of those | register (without the need for MOV-golfing ?) | ngvrnd wrote: | Dunno about the pdp-1, but the pdp-10 series machines | allowed the registers to be addressed like memory, if I | recall correctly- the registers were special and faster | than the rest of memory, but one could put machine code in | them and run it there. I guess using registers would have | been tricky in that case though. | aap_ wrote: | The pdp-1 has two architectural registers: AC and IO and | they're not addressable as memory. The PDP-10 has a | similar internal structure but fetches and stores the | accumulator from/to memory* for instructions that use it. | | * in the PDP-6 it really is external memory, in the later | models (aka PDP-10) it was moved into the CPU | djmips wrote: | https://www.masswerk.at/spacewar/inside/pdp1-instructions.h | t... | retrac wrote: | > Was it possible in assembly to directly address each of | those register (without the need for MOV-golfing ? | | Kind of. 12-bit address field in the instruction. It was an | accumulator machine; the CPU only had one main register (as | we use the term today) and all operations were between that | implicit register and the address specified in memory. | FullyFunctional wrote: | A "register" is just a [core] memory word. ("The PDP-1 uses | an 18-bit word size and has 4096 words as standard main | memory", https://en.wikipedia.org/wiki/PDP-1). Terminology | changed since then. | | I like how the assembly source code is small enough to | include at the end of the manual. A bit of slogging finds | you the source code and a pdp-1 assembler, enough to run it | on simh or MESS, but even though there's a online PDP-1 | emulator running SpaceWar!, I wasn't able to find a way to | run Lisp 1 online. | | * http://www.softwarepreservation.org/projects/LISP/interli | sp_... | | * http://simh.trailing-edge.com/kits/lispswre.zip | djmips wrote: | Some more info about the PDP-1 asm here. | https://www.masswerk.at/spacewar/inside/pdp1-instructions.ht... ___________________________________________________________________ (page generated 2022-05-19 23:01 UTC)