Answer the question
In order to leave comments, you need to log in
What programming language to learn for self-development?
I would like to learn one of the modern (gaining momentum) programming language.
Basic conditions:
- Object-oriented language model
- Static typing
Learning objectives:
- Self-development (brain load)
- Distract from the main (working) language -
Future perspective
I see such options as Go and Scala. I would like to hear specific recommendations for each of the proposed languages.
Answer the question
In order to leave comments, you need to log in
I recommend Go - static and OOP and CSP. And for self-development, it's better to leave your comfort zone and take "not OOP at all" - Forth, Haskell, Erlang, Prolog, Perl, Ruby.
1) Forth - a stack language, you start to dodge with restrictions, pumping optimizations
2) Haskell / Prolog - functional languages, "everything is completely different", you start programming considering the program in a complex way, as a whole
3) Erlang - even if you just read about it, then you understand what a real engineering approach to the development of _large_ software systems is, and after realizing the power of actors, you laugh at the threads of other languages
4) Perl / Ruby and Python here - I highly recommend looking at their methods of working with collections, they allow you to compactly, in a couple of lines, express what for the same C / C ++ would take a couple of dozen lines
5) well, and Assembler, of course, after it you begin to understand the architecture of a computer and other programs, and methods for improving the performance of your code
Something like this, IMHO.
For the expansion of consciousness, the Rock is well suited, a lot of things are stuffed into it. And paradigms, and different "frills". If you don't perceive it as "Java without semicolons", but light it up thoughtfully and thoroughly, then it will be enough for a long time.
There is also a book called "7 languages in 7 weeks", where you gallop through Europe, but you can pick up ideas.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question