Introduction to Compilers and Language Design by D...
# linking-together
s
Introduction to Compilers and Language Design by Douglas Thain - https://www3.nd.edu/~dthain/compilerbook/
👀 1
c
Thanks for this! Always looking for new potential textbooks for my Programming Languages class. I'm using Crating Interpreters right now, which I'm quite happy with and seems similar to this book. One complaint I have is that there's not much in here about PL "design" per se. Really it's more about implementation of a language that's already been designed.
I saw this book on /r/programminglanguages and apparently they had the same thought about the lack of attention to the design side in this book. The question was posed there: are there any good books actually devoted to PL design? Can anyone here think of any?
s
Hey, thanks for your comments. I do agree that the design part is really not present much. And it is hard to get a good book on the subject. I see a few things here 1. Many langs were designed and released by a non-academic settings (Go, Rust many actually, AFAIK). And in non academic settings, I guess it is harder to have a systematic distillation of acquired knowledge over the years. They do not often write papers and things which includes their findings. 2. Because of this reason, many parts of the knowledge you gain by creating a lang, used by several hundred thousand people are often not available easily and hence hard for some fellow researchers to gather and work on it. 3. I also do not know how well defined this field is. With the lack of literature here, if one set out to write a book, a good book nonetheless, how will the person structure this book? What topics will he/she need to discuss? To what extent? ... Do we know the answers to those questions?
c
Came across this, which I think fits the bill in article form: https://blog.sigplan.org/2022/05/19/language-design-in-the-real-world/
s
it is brief but nice. I wish we could compile a resource on language design specific things, at least that will do some tidying and may actually bring the attention from some other folks.
c
Great idea, I guess I'll start a list here and add to it when I come across new resources. Any other resources I should add at the outset?
s
Make a
Show HN
with this maybe. It can be interesting