Alex Rivera | Logout

Do theoretical computer science topics have "real world" development applications?

Asked 2009-01-20T14:33:21.523
19

By "theoretical computer science topics", I am referring to things such as regular vs non-regular languages, the pumping lemma, and grammars.

I'm familiar with the real world applications of finite automata and regular expressions, but topics such as these other ones are giving me more problems as I'm not seeing any real world applications.

Edit
Report

2 Answers

9

Here's Steve Yegge's take about the usefulness of compilers, summed up as:

In fact, Compiler Construction is, in my own humble and probably embarrassingly wrong opinion, the second most important CS class you can take in an undergraduate computer science program.

Grammars are essential to parsing recursive structures, which appear in programming languages, natural languages, and complex data structures. I believe some programmers do not meet them at all, but the persons who write compilers, IDEs, serialization etc. meet them a lot.

answered 2009-01-20T14:46:29.890
6

As Yuval F pointed out, grammars are of critical importance to language parsing. If you take a look at parser generators, such as ANTLR, you'll find that the structure of grammars is surprisingly similar to what you've learned in school.

answered 2009-01-22T04:26:41.093

Your Answer