On 24/06/2007, at 7:43 AM, Peter Miller wrote:



I wonder how vital understanding how compilers work really is for the
majority of programmers.

This is a classic case of the blub paradox:
http://www.paulgraham.com/avg.html

Perhaps we were solving different types of problems? Now that I think about it a bit more, there were actually more problems where compiler theory could have been handy than I remembered.

Compiler theory is the most powerful set of tools in a coder's toolbox. In my experience, there is rarely a new problem goes by that doesn't use
one or another of the techniques collectively called compiler theory.
But then, I like writing compilers.


Maybe I should give it another look, if you really think it's that important. Holidays are coming up, and it would keep me off the streets :)

to answer Mark's question: if you understand a computer well enough to
write a compiler, and tell that compiler how it works, then you
understand it *very* well.   And they don't even teach pointers any
more, sheesh!

Well, it depends on the degree program. When I went through, most courses used C or Pascal etc. as the introductory language, and then other languages were taught in other courses. People are free to pick and choose courses to some extent, and could get through an entire CS course now knowing only Java. But C programming and data structures etc. are still definitely offered, and many students take them.

For my degree, it was compulsary to learn electronics, digital logic, computer organisation, data structures, systems programming, operating systems, formal languages and automata, programming language structures and discrete maths. So I guess we had all the pieces just ready to put together with compiler theory, but never quite got around to it.

Mark
_______________________________________________
coders mailing list
coders@slug.org.au
http://lists.slug.org.au/listinfo/coders

Reply via email to