I am an undergraduate studying mathematics and one of my interests include complexity and computability theory. I have no experience in programming. The computability theory books I looked into didn't seem to require the need to learn a computer language however books on algorithms always do. My question if I want to learn more about this field do I have to know programming languages or can I learn the topic from a purely theoretical perspective? And if programming languages are required to explore complexity and computablility, which would you in your experience say are the languages that would be best to invest in at an earlier stage of my education? Thank you.


If you want to learn about algorithms, it is a very good idea to learn programming. It always helped me to understand the algorithms, if I also programmed them. And if you are good with understanding algorithms, programming will not be very hard.

As programming languages i recommend python and C/C++

| cite | improve this answer | |
  • $\begingroup$ I would certainly recommend implementing a few standard algorithms and data structures. On the other hand, with more advanced algorithms it is often quite hard to implement them. Even if doable, it takes a lot of time that could be better spend on other things. $\endgroup$ – dtldarek Aug 20 '15 at 11:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.