[HN Gopher] PostScript 1.0 - A Code Study
       ___________________________________________________________________
        
       PostScript 1.0 - A Code Study
        
       Author : todsacerdoti
       Score  : 51 points
       Date   : 2024-10-04 23:46 UTC (3 days ago)
        
 (HTM) web link (ztoz.blog)
 (TXT) w3m dump (ztoz.blog)
        
       | kencausey wrote:
       | I'm curious about the history of the base language reportedly
       | designed at Evans & Sutherland 1971ish. I couldn't turn up much
       | in the few minutes of searching I did. If anyone can provide
       | links to papers or anything on this subject I would appreciate
       | it.
        
         | jwstarr wrote:
         | As a a starting point, "The Origins of PostScript"
         | (https://gwern.net/doc/design/typography/2018-warnock.pdf)
         | provides a few details on the language and Gaffney's
         | involvement. Warnock's oral history for the Computer History
         | Museum (https://www.computerhistory.org/collections/catalog/102
         | 73875...) also includes the story. Gaffney's patent provides
         | the most detail but, unfortunately, it is written as a patent
         | rather than a language description.
         | 
         | The DoD DTIC service has a couple of reports that cover the
         | Harbor Pilot Simulation, but I haven't found any reports
         | written by E&S. The Computer History Museum has some records
         | from Evans and Sutherland, but I don't think any of them cover
         | the language.
        
           | kencausey wrote:
           | Thanks, but I saw that much, I should have been clearer. I'm
           | hoping for something on the scale of a survey if not a paper.
           | 
           | Honestly, my first curiosity regards whether Chuck Moore and
           | Forth get any mention or whether this is a true parallel
           | development, possibly necessitated by the hardware at hand.
           | My perception, based on zero evidence, was that Forth had
           | some influence on the design of Postscript.
        
             | tln wrote:
             | Apparently not. From "The Origins of PostScript" mentioned
             | by GP:
             | 
             | > The architecture suggested by John Gaffney was to be
             | based on a fictitious stack machine (at that time we had no
             | knowledge of a similar approach taken by the Forth
             | language).
             | 
             | That is the only mention of "Forth".
        
           | fanf2 wrote:
           | That led me to this presentation on the Eidophor projector
           | https://www.youtube.com/watch?v=3-BvMcqEc98
        
       | WCSTombs wrote:
       | Slightly tangential, but here's my own Sierpinski triangle
       | program from a couple of decades ago, which IMO is considerably
       | simpler than what they show:                   %!
       | /threshold 4 def              /Sierpinski {          dup
       | threshold ge {           3 {dup 2 div Sierpinski dup 0 rmoveto
       | 120 rotate} repeat          } {           3 {dup 0 rlineto 120
       | rotate} repeat closepath          } ifelse          pop         }
       | bind def              50 50 moveto 512 Sierpinski fill
       | showpage
       | 
       | It actually can be simplified a bit more, and the explicit
       | recursion can be removed entirely, since there's already a free
       | operand stack.
        
       | tonyedgecombe wrote:
       | I've been writing a PostScript interpreter as a retirement
       | project. I deliberately avoided looking at the Adobe source
       | although I have been running the LaserWriter firmware[1] in
       | MAME[2].
       | 
       | At the moment I'm just implementing the language. The core
       | interpreter is done apart from error handling and a ton of
       | operators. After that I'll decide whether to go on to the
       | imaging.
       | 
       | [1] http://beefchicken.com/retro/laserwriter [2]
       | https://github.com/mamedev/mame/blob/master/src/mame/apple/l...
        
       ___________________________________________________________________
       (page generated 2024-10-08 23:01 UTC)