Hacker News new | ask | show | jobs
by andrewflnr 4813 days ago
I did mention SML, which is a compiled language commonly regarded as an excellent language for writing compilers. I don't believe your analogy of interpreted languages being like riding a plane is accurate. If you want to be "closer to the metal" or whatever, start with C, or assembly. But actually, computational theory is done with Turing machines, which no one uses directly in real life, and lambda calculus, which is far closer to scheme than Java. Which is more appropriate for learning the deepest basics of programming?

As for using a single language, I really don't know. I'm self-taught so far. I can't imagine a good CS degree to not use multiple languages to some degree. Can you do everything from process scheduling to web dev with one language, and do it well?

Further, I'm not sure an "enterprise-class" language is appropriate for learning. Mybe it's just all the OO ceremony that bugs me. I was watching a friend try to explain some C++ code to some ostensibly interested but inexperienced people. He kept having to say "you'll learn what this does later, it just has to be there..." to stuff like includes, int main, type declarations. That's no way to learn. Java is better, but not much. "What's a class?" they ask on their first day. A distraction, mostly.