• Why should students still study compilers?

    From Roger L Costello@costello@mitre.org to comp.compilers on Mon Aug 24 17:44:50 2026
    From Newsgroup: comp.compilers

    For many years, I've regarded compiler construction as one of the most scientific, disciplined, and algorithmic areas of computer science. There is something wonderfully satisfying about a field in which so much can be derived systematically rather than done by the seat of the pants.

    The difficulty, at least in my experience, is that there simply aren't that many jobs writing compilers. Occasionally I get a small job writing a
    dedicated parser, but for the most part I have little opportunity to use compiler algorithms professionally. That makes it hard to justify spending my limited time keeping those skills fresh.

    And now I wonder whether LLMs will reduce the demand for some kinds of
    compiler and parser expertise even further.

    So I'm curious what people on this list think: **Why should a computer science student today take a compiler course?**

    Do students take compiler courses because the techniques they learn are likely to be useful in their careers, despite the relatively small number of jobs involving compiler development? Or is the real value of a compiler course that it teaches broader ways of thinking about languages, grammars,
    representations, transformations, optimization, and software systems?

    And has the arrival of LLMs changed your answer at all?
    --- Synchronet 3.22a-Linux NewsLink 1.2
  • From ram@ram@zedat.fu-berlin.de to comp.compilers on Wed Aug 26 16:37:54 2026
    From Newsgroup: comp.compilers

    Roger L Costello <costello@mitre.org> wrote or quoted:
    So I'm curious what people on this list think: **Why should a computer science >student today take a compiler course?**

    A computer science student should be prepared for a computer
    science career at a university, so he clearly needs compiler
    construction there. But maybe he could still learn this as a
    postgrad.

    Some percentage, like 5 or 10 percent of graduates might in fact
    write or maintain compilers or interpreters at some organization.

    Others might use their knowledge to implement DSLs.

    With the new AI programming agents, the programmers do often not
    write code themselves, but they might need to supervise these tools.
    This requires knowledge in compiler construction when the project
    at hand is related to this field.

    Other students will not need this class indeed, but this can often
    only be seen in hindsight. When the student studies, it is often not
    yet known what parts of his education he will need in the future. So
    one needs to include those topics that most students will probably
    need so that later they can choose between as many career paths in
    the field as possible.
    --- Synchronet 3.22a-Linux NewsLink 1.2
  • From bixbox@noreply@example.invalid to comp.compilers on Thu Aug 27 07:48:20 2026
    From Newsgroup: comp.compilers

    Michael Lehn <michael.lehn@uni-ulm.de> writes:

    But there have also always been students who wanted to know _why_ something works, either because they were curious from the beginning or because somebody
    managed to make them curious. They wanted to understand how one might come up with a proof rather than merely reproduce it. Those students gradually developed their own ways of thinking. Later they were not only better at dealing with known theorems and standard problems, but also at developing creative ideas when confronted with problems they had never seen before.

    Which in my opinion is one of the advantage to use LLM. Having the
    capability on your fingertips to dig deeper on the why, or even basic
    more comprehensive explanation and the capability to expand my knowledge
    very easily and the capability to compress the learning time.

    I have no idea which problems LLMs (which I use myself) will be able to solve better than I can in the future. But I suspect I will be able to use them much
    better if I understand which problems I can delegate to them as part of solving a larger problem that they cannot yet solve the way I can.

    One amazing thing that I was able to do is to apply some formal
    verification methodology to my day to day work because using LLM enable
    me to explore and comprehend way more complex problem in a shorter time
    and with less effort.

    bix
    [I suppose. How do you know that the LLM got it right? I'll say it did,
    but that's not the same thing? -John]
    --- Synchronet 3.22a-Linux NewsLink 1.2