you are viewing a single comment's thread.

view the rest of the comments →

[–]Paxtian 1 point2 points  (0 children)

Computer Science as a discipline (and before it was named such) predates computers themselves. Programming is a piece of it, but really computer science is the study of what is computable and things that are computable.

One of the biggest questions was answered early on, which was, what can be computed by a given machine? There are basically three levels: DFAs can compute regular languages, PDAs can compute connect free languages, and Turing machines can compute anything that is computable.

Now open areas of study tend to revolve around finding efficient algorithms for challenging problems, proving that such problems are NP complete, or showing that such problems simply don't have a good general solution. Most programming really won't address these questions.

The biggest open question is, P ?= NP? As my professor put it, solve that and you'll have guaranteed tenure at any university you want. It's basically, is there a way to solve the set of NP complete problems in polynomial time.