Path: csiph.com!eternal-september.org!feeder.eternal-september.org!nntp.eternal-september.org!.POSTED!not-for-mail From: Paul Rubin Newsgroups: comp.lang.forth,comp.lang.postscript,alt.folklore.computers,comp.lang.lisp Subject: Re: Postscript in 4tH Date: Wed, 09 Sep 2026 03:01:07 -0700 Organization: A noiseless patient Spider Lines: 19 Message-ID: <87se3ikal8.fsf@nightsong.com> References: <117hl2n$1ne4b$1@dont-email.me> <871pb7l36f.fsf@nightsong.com> <875x0gib1k.fsf@debian> <117prfv$gq7e$3@dont-email.me> <87o6e7cifh.fsf@debian> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Date: Wed, 09 Sep 2026 10:01:16 +0000 (UTC) Injection-Info: dont-email.me; logging-data="1090885"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/SNqlkkP7uWzpEDuOuasjQ"; posting-host="754bbbfeb8da5a3da6e05d48a9cd6f11" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) Cancel-Lock: sha1:f0K85ZBo+m9sHyKncJufCS+vEDQ= sha1:7r4JSNRiUPAIh7FK5wXFxVw8QCc= sha256:fDY+Hi9VRSGk8abMD1OsKQ9/K8ceOajJWfDaGVLnSgA= sha1:aDZzyUpc+awrKMkLFuBWTSCzy18= sha256:mRkfW8aImOBCKn+XUaUsGfofMHtLtXvT4I/ZXh9XLlQ= Xref: csiph.com comp.lang.forth:135623 comp.lang.postscript:4033 alt.folklore.computers:235555 comp.lang.lisp:61634 Kragen Javier Sitaker writes: > At the time that PostScript was designed, most Lisps did not have > macros; they still had fexprs.... PostScript first shipped in 01982, 1982 was right in Lisp's heyday and I expect the major implementations all had macros (Maclisp, Lisp Machine Lisp and its descendants, Nil, Spicelisp). Scheme was around and didn't have macros but I don't think it had fexprs either. > Given that PostScript clearly hits 8 out of 9 of these criteria, and > arguably all 9, while no then-popular language other than Lisp came > anywhere close, I think it’s pretty clear that it mostly belongs to the > Lisp family. I think that list is pretty bogus. The main characteristic of Lisp imho is lambda calculus and lambda binding. In order to even have a local variable in a PostScript function, you have to literally push a dictionary on the evaluation stack and invoke BEGIN, then later END to pop the dictionary stack, like Forth wordlists.