> It doesn't actually mater what language you learn first
OK, start with Prolog. Now move to Ruby. Then Haskell, and include some SQL in that as well, somehow.
Now write me a program in APL.
Languages within the same paradigm are mostly similar. But there are a lot of paradigms, and some concepts don't transfer well at all. (Quick, what's the equivalent of an anonymous inner class in Prolog?)
...and moving from javascript strings to Ruby strings is far from a "30 seconds syntactical exercise", unless you don't take into account the fact that:
* Ruby strings don't necessarily have all the same encoding
* Javascript strings don't implement all of Ruby Strings' methods
* Ruby Strings are mutable, while JS's are immutable
* R̶u̶b̶y̶ ̶d̶o̶e̶s̶n̶'̶t̶ ̶h̶a̶v̶e̶ ̶C̶h̶a̶r̶s̶,̶ ̶J̶a̶v̶a̶s̶c̶r̶i̶p̶t̶ ̶d̶o̶e̶s̶ (edit: brain fart... I probably wrote too much Clojure[script], even if char literals in cljs just yield strings again)
(Or you use Opal, which doesn't abstract Javascript Strings much)
OK, start with Prolog. Now move to Ruby. Then Haskell, and include some SQL in that as well, somehow.
Now write me a program in APL.
Languages within the same paradigm are mostly similar. But there are a lot of paradigms, and some concepts don't transfer well at all. (Quick, what's the equivalent of an anonymous inner class in Prolog?)