Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.compilers > #3077 > unrolled thread
| Started by | Roger L Costello <costello@mitre.org> |
|---|---|
| First post | 2022-06-19 11:54 +0000 |
| Last post | 2022-06-20 16:16 -0700 |
| Articles | 2 — 2 participants |
Back to article view | Back to comp.compilers
If I were in charge of the computer science curriculum at a college or university ... Roger L Costello <costello@mitre.org> - 2022-06-19 11:54 +0000
Re: If I were in charge of the computer science curriculum at a college or university ... gah4 <gah4@u.washington.edu> - 2022-06-20 16:16 -0700
| From | Roger L Costello <costello@mitre.org> |
|---|---|
| Date | 2022-06-19 11:54 +0000 |
| Subject | If I were in charge of the computer science curriculum at a college or university ... |
| Message-ID | <22-06-049@comp.compilers> |
Hi Folks, If I were in charge of the computer science curriculum at a college or university I would require students to first take a course on how to create lexers and parsers using a parser generator (e.g., Flex and Bison) before taking a course on compilers. For the last many months I have been immersed in learning Flex and Bison (great fun!). Recently I have started reading the dragon compiler book. As I read it, I come across things in it and think "Ah, that's why Flex/Bison does that." But I also come across things and think "Oh man, I never would have understood what that is saying if I didn't know Flex/Bison." The dragon book is filling in gaps in my understanding of Flex/Bison, while simultaneously Flex/Bison is filling in gaps in the dragon book's explanation. Synergy! I believe that some of you are on the faculty at colleges and universities. Is this how your curriculum works? /Roger [When I was teaching a compilers course back in the late 1970s I talked about lex and flex when we covered regular expressions and DFAs, and about yacc when we covered LR parsing. They're just tools, not worth a separate course. -John]
[toc] | [next] | [standalone]
| From | gah4 <gah4@u.washington.edu> |
|---|---|
| Date | 2022-06-20 16:16 -0700 |
| Message-ID | <22-06-054@comp.compilers> |
| In reply to | #3077 |
On Monday, June 20, 2022 at 3:08:28 PM UTC-7, Roger L Costello wrote: > If I were in charge of the computer science curriculum at a college or > university I would require students to first take a course on how to create > lexers and parsers using a parser generator (e.g., Flex and Bison) before > taking a course on compilers. In semester schools, the shortest course is one semester, half a (school) years. With the quarter system, not including summer, there are three quarters. Most courses are a full (school) year, but you can have one quarter courses. I suspect that John is right, and even for one quarter it would be hard to make a class just out of flex and bison. There is a book series, "Handbook of Programming Languages", and within the series: "Little Languages and Tools." That doesn't include flex and bison, but I suspect with it, and with some more books, you could make a nice course teaching different tools and their use. https://www.pearson.com/us/higher-education/program/Salus-HPL-VOL-III-LITTLE-LANGUAGES-AND-TOOLS/PGM154415.html It is also available very reasonably priced on the used market. (All four books are reasonably priced used.) With that book, and the Flex/Bison book, you should be able to make a pretty interesting CS course. You can decide how much to cover each language, or skip some. And then some simple problems with flex and bison to get students ready for compilers. But yes, as I still remember from about 40 years ago, the beginning of a compiler course are hard to follow, from just the theory. Having seen flex/bison in action previously would make it much easier.
[toc] | [prev] | [standalone]
Back to top | Article view | comp.compilers
csiph-web