2 ms·
Hm. Maybe I made myself unclear - I was meaning to be specifically in response to the parent post, who said that only knowing 10% made him feel empowered. I w
by deckiedan 11y ago
Hm. Maybe I made myself unclear - I was meaning to be specifically in response to the parent post, who said that only knowing 10% made him feel empowered.
I was meaning, in a sense, that it's better to have a language which doesn't have such a complex history, undefined behaviour, and weird syntactic trivia.
The simpler the language, the less unexpectedness occurs, and the more you can concentrate on the actual logic and meaning.
For instance, in English, "homosexual" = attracted sexually to those who are the same ("homo") gender as yourself. But "homophobic" does not mean hating/fearing those the same gender as yourself. The rules are complex, with history, weirdness, and are confusing.
The same with programming languages, I feel. Take JS, for instance.
>>> (0 == [])
true
>>> typeof (0 + 0)
"number"
>>> typeof ([] + [])
"string"
There is no reason on earth I want to know that stuff or operator precedence rules. I can never remember those if I need to do a `x * y + 2 z --` and so always write in brackets explicitly. But the language can accept such things, and make an order from them.
Going back to C (sorry for jumping around), yes, it's simple compared to C++, or many other languages, but it does have a lot of history, undefined behaviour, and stuff you simply need to be aware of. And it's that stuff that makes life complex for C beginners (and allows bugs for C of all experience levels). There's a reason I didn't list C as a simple language. :-)
If our languages didn't have such quirks, and we didn't have to cope with working around them, a lot less mistakes would be made. http://separatedbyacommonlanguage.blogspot.co.uk/2007/10/to-table.html http://separatedbyacommonlanguage.blogspot.co.uk/2007/10/to-... for instance, in English.
English - the Javascript of the human languages.