Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.compilers > #2859
| From | Kaz Kylheku <480-992-1380@kylheku.com> |
|---|---|
| Newsgroups | comp.compilers |
| Subject | Re: Are compiler developers light-years ahead of other software development? |
| Date | 2022-01-22 21:22 +0000 |
| Organization | A noiseless patient Spider |
| Message-ID | <22-01-094@comp.compilers> (permalink) |
| References | <22-01-059@comp.compilers> <22-01-083@comp.compilers> <22-01-090@comp.compilers> |
On 2022-01-22, Roger L Costello <costello@mitre.org> wrote: > Kaz Kylheku wrote this about the C++ compiler: > >> In other words, a major compiler for probably >> the programming language with the most >> complicated syntax ever, eschews pretty much >> all that we have learned and accumulated about >> parsing between around 1968 and now. > > Yikes! > > They ignored the rich theory and vast set of algorithms, in favor of > their own proprietary code? Why would the C++ compiler developers do > such a thing? Wild guess: Suppose that there is a foo_statement which contains a bar_designator, and something is wrong in there. They can fire up gdb, and put a simple breakpoint on bar_designator, feed in the test case and get a call stack in which parse_bar_designator is called by parse_foo_statement. They can examine all the locals, and arguments up the stack. Typically, nothing like this is easily possible with the theoretically-based parser generation tools. And in C++, you're likely going to be debugging parsing quite a bit. The main parser generation tools used by GNU projects are Flex and Bison. These tools are moving targets; especially Bison. The common practice is to ship the generated parser. (In a fundamental compiler project, you have to for other reasons, like the users not having thta tool installed, because maybe they need your compiler to build it: you want as few dependencies as possible.) Now GCC is hacked on quite a bit and has lots of contributors. It would be annoying to tell people "Oh, just use the generated, shipped parsers if you're not touching the grammar; if you need to regenerate, please use the exact version Bison X.Y.Z.". If a parser is hand-written, that whole sort of problem goes away. > /Roger > [My guess is that they were too busy chopping down trees to sharpen their axes. -John] -- TXR Programming Language: http://nongnu.org/txr Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Back to comp.compilers | Previous | Next — Previous in thread | Next in thread | Find similar
Are compiler developers light-years ahead of other software development? Roger L Costello <costello@mitre.org> - 2022-01-16 14:36 +0000
Re: Are compiler developers light-years ahead of other software development? Philipp Klaus Krause <pkk@spth.de> - 2022-01-16 22:13 +0100
Re: Are compiler developers light-years ahead of other software development? gah4 <gah4@u.washington.edu> - 2022-01-17 07:14 -0800
Re: Are compiler developers light-years ahead of other software development? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2022-01-19 21:33 +0000
Re: Are compiler developers light-years ahead of other software development? Kaz Kylheku <480-992-1380@kylheku.com> - 2022-01-22 03:01 +0000
Re: Are compiler developers light-years ahead of other software development? anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2022-01-22 10:43 +0000
Re: Are compiler developers light-years ahead of other software development? Kaz Kylheku <480-992-1380@kylheku.com> - 2022-01-22 21:38 +0000
Re: Are compiler developers light-years ahead of other software development? Roger L Costello <costello@mitre.org> - 2022-01-22 12:50 +0000
Re: Are compiler developers light-years ahead of other software development? Kaz Kylheku <480-992-1380@kylheku.com> - 2022-01-22 21:22 +0000
Re: Are compiler developers light-years ahead of other software development? Ian Lance Taylor <ianlancetaylor@gmail.com> - 2022-01-22 15:40 -0800
Re: Are compiler developers light-years ahead of other software development? Kaz Kylheku <480-992-1380@kylheku.com> - 2022-01-23 06:17 +0000
csiph-web