Path: csiph.com!weretis.net!feeder6.news.weretis.net!news.misty.com!news.iecc.com!.POSTED.news.iecc.com!nerds-end From: gah4 Newsgroups: comp.compilers Subject: Re: fun with Postscript, was Flex is the most powerful lexical analysis language in the world. True or False? Date: Sat, 7 May 2022 13:10:50 -0700 (PDT) Organization: Compilers Central Lines: 30 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <22-05-020@comp.compilers> References: <22-05-003@comp.compilers> <22-05-011@comp.compilers> <22-05-015@comp.compilers> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="30797"; mail-complaints-to="abuse@iecc.com" Keywords: design, comment Posted-Date: 07 May 2022 18:14:00 EDT X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com In-Reply-To: <22-05-015@comp.compilers> Xref: csiph.com comp.compilers:3000 (snip, I wrote) > An important part of a programming language is that people can understand it. (snip) > [Take a look at Postscript, which is trivial to tokenize and parse since > it's a stream of tokens in RPN order, but making sense of it > by humans is a challenge. Or, of course, m4. -John] Reminds me of the origin of RISC, when (I believe) IBM noticed that compilers were using a small subset of the available instructions, and that much less programming was being done in assembly. But okay, was Postscript supposed to be written by people, or programs? As with code generated by compilers, it has to be understood by people at least once, but even then, only step by step, and not (usually) the whole program at once. But yes you can write unreadable Postscript. Once, some years ago, we (me and some others) needed to redefine def. [Actually, RISC was at Berkeley, and IBM's project was the 801. But yes, they noticed compilers used only a fraction of the S/360 instruction set so they made a minimal design that supported only what their state-of-the art compiler used. RISC was sort of the same but they used the mediocre PCC compiler which is why they had register windows to compensate for PCC's weak register allocation. -John]