From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED!not-for-mail From: Luke A. Guest Newsgroups: comp.lang.ada Subject: Re: Studying and Maintaining GNAT, Is There Any Interest in a New Group? Date: Wed, 29 Aug 2018 07:18:32 +0100 Organization: Aioe.org NNTP Server Message-ID: <1230377626.557216184.473076.laguest-archeia.com@nntp.aioe.org> References: <309225242.556906218.575482.laguest-archeia.com@nntp.aioe.org> <2145221813.556924687.162377.laguest-archeia.com@nntp.aioe.org> <3892c779-2924-405c-b88d-19389fc5ba3e@googlegroups.com> <1ceec6d8-c5c4-49b1-9808-a3580bba3f8e@googlegroups.com> <87y3cpdgds.fsf@nightsong.com> NNTP-Posting-Host: scszsNlnGkpw/NbFNLGDHQ.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Complaints-To: abuse@aioe.org User-Agent: NewsTap/5.3.1 (iPhone/iPod Touch) X-Notice: Filtered by postfilter v. 0.8.3 Cancel-Lock: sha1:98yhWPhunbnOdopaBEsk/6ovIYo= Xref: reader02.eternal-september.org comp.lang.ada:54289 Date: 2018-08-29T07:18:32+01:00 List-Id: Paul Rubin wrote: > "Randy Brukardt" writes: >> Fitting OO into a compiler design could very easily turn into a nightmare of >> required overriding routines, making it very painful to add new kinds of >> nodes. > > I agree with this from a different perspective. I greatly enjoyed > Andrew Appel's book "Modern Compiler Implementation in ML" and based on > it, if I were to try writing a compiler for real, I'm quite sure I'd use > a functional-programming approach if possible, probably in Haskell or > maybe Idris, though ML is of course possible too. People interested in > writing compilers should check out the book. > I have the C version of that book, bought before I got into Ada. I can see how FP languages help in the construction of the front end of a compiler, but forcing FP on the rest of the compiler where you’re not doing tree walking, I’m not so sure.