Hacker News new | ask | show | jobs
by benj111 40 days ago
But you still need to know the language specific constructs.

I can't magically speak German because I know a load of abstract language theory.

And this can work the opposite way. If I know small talk, and then read that C++ can do OO code, I could then think about writing X in C++ and OO being the best model. But I then hit problems when the limitations of OO in C++ become apparent.

In my experience, programming in a language is finding what works in that language, not trying to make the language fit what is in your head.

1 comments

That's true, but the point the GP was getting at is, if you want to make a program that does xyz, you can do that in any complete language provided you have the mathematical reasoning to figure out how to make it happen. Whether you do that in an object-oriented manner because the language you're using makes that easy, or with some other paradigm.

Programming in a language is finding what works in that language, you're right, but programming at all is trying to get what's in your head into the computer.

I suppose it depends how we define 'true mastery'

Yes you have to understand the problem and state the solution, and that is a prerequisite to 'mastery' but I don't think that's everything that's required.

And this is just talking about the algorithm level. Is Ed equivalent to Emacs? They both do the same thing. Is a complicated solution that demonstrates your mastery better than a simple solution?