4 ms·
I'm baffled by people's obsession with finding The One Programming Language. Would the world be better off if everyone spoke and thought in only English?
by krutulis 14y ago
I'm baffled by people's obsession with finding The One Programming Language. Would the world be better off if everyone spoke and thought in only English?
- amouat 14y agoI agree with your sentiment, but there is still a lot to be said for being able to use the same language on the server and client within a single application. I'm currently investigating ClojureScript for this very reason.
- PommeDeTerre 14y agoWhy do so many people consider using the same language on the server and on the client to be such an accomplishment? We had exactly that situation for many years. We'd write our server software in C or C++, and we'd write our client software in C or C++. A bit later on, and we saw Java become popular. Soon we were writing server-side code in Java, and accessing these servers using client apps written in Java. Some time after that, we saw people and organizations more in the Microsoft camp doing the same with VB.NET and C#. It's only with the relatively recent rise of web apps, and the inflexibility brought on by JavaScript being the only viable scripting language supported by the major browsers, that we've seen this issue arise. Having to use JavaScript on both the client-side and server-side shouldn't be seen as beneficial in any way. It's actually just a very negative side effect of JavaScript being the only option for client-side web development.
- amouat 14y agoI wouldn't use the word "accomplishment"; you're right - it's a side effect of JavaScript being the only option. But why complicate things with multiple languages if you can use one? Then all developers can understand and edit the codebase.
- stingraycharles 14y agoJavascript isn't the only language you can develop web applications on, in the same sense that assembly isn't the only language you can develop server software on. Javascript is what all browsers natively speak, and if you want your language to be understood by a browser, you must compile it down to javascript. The same can be said about assembly: it's the language that all CPUs speak, and if you want your application to be understood by a CPU, you must compile it down to ASM. In this way, you can see javascript as the bytecode of the internet. So this shouldn't be seen as something negative: it's great, actually, that javascript is evolving in this way. It will allow for more flexibility: you can write your server software in clojurescript, your client software in coffeescript, and still share some common libraries for functions you need to call on both client and server.
- pjmlp 14y agoI share the same opinion. I cannot understand why some developers fail to understand that we need different tools optimized for different types of tasks. It is like they are afraid of learning.
- krutulis 14y agoFear likely plays a part. I also find it interesting that most people on the thread seemed to have missed the important difference between having a shared language and having only one language! As an English-speaking U.S. citizen who has studied some German and Russian but is fluent in only English, I can say that I am seriously limited by my ignorance of other languages. As a programmer who programs in several different languages, I am perplexed that people dream of The One True Language. Today I am likely to write some R, bash, SQL, awk, in addition to javascript. I don't believe that fear of new languages leads people to imagine I'd be better off using Javascript in all these contexts or that Javascript would be better off if it added the features of all these other languages.
- MatthewPhillips 14y agoBecause most languages are not optimized for a type of task, most languages are not DSLs. Most languages are "general purpose". I don't understand why so many people continually make this same comment.
- pjmlp 14y agoWell you could try to write Rails in C, Crysis in JavaScript or device drivers in TCL, after all they are all turing complete. Hence the need to know several languages and use the right one for the task at hand.
- chr1 14y agoI don't think natural languages are a very good analogy for programming languages. But the world where everyone can speak English, is certainly a better place. (disclaimer: English is only my third language)
- gebe 14y agoGoing off topic here but: I won't disagree with the utopian notion of a world where everyone have a common lingua franca, I think that would be a good thing as well. There being only a single language though, that's definitely not a very positive thing.
- krutulis 14y agoYou've missed the point a bit. Perhaps having everyone speaking English would be helpful -- but what if everyone spoke only English? Would the world then be better off? With respect to this question, I think natural language is a very good analogy. And so is biological evolution. Diversity, exploration of thought, and experimentation with expressiveness are very important aspects of having and using different programming languages.
- archangel_one 14y agoWell, if everyone in the world spoke the same language (whatever it happens to be) then more or less everyone would be able to understand one another. It'd be easier to develop speech software with only one language's worth of idiosyncrasies. So yeah, I think the world might well be better off as a whole.
- wting 14y agoIf the world standardized on English, it would help improve global efficiency and communication. As it is, English is the lingua franca of business and software. However a large part of culture is language, and countries are always trying to maintain their own. We're also all pretty biased since this discussion occurs in an English-based community. If Chinese were to become the dominant world language, I bet there would be more resistance. The imperial system is a prime example where Americans are a stubborn cultural holdout. Another concern is that language helps shape one's beliefs. Multilinguals understand that there are certain cultural concepts in native languages that are difficult to translate. Likewise, being a single language developer--whether it's Javascript or Lisp--influences how a developer approaches problems.
- reycharles 14y ago> However a large part of culture is language I think the reverse also holds. A large part of language is culture. The meaning of a sentence depends on the context and culture is a part of the context. I believe if all the world started speaking the same language it would quickly diverge into different dialects and (sub)languages.
- joelangeway 14y agoI personally have often gotten the impression that a large portion of developers already have The One Programming Language in their mind. It's usually Java or C# or sometimes still C++. JavaScript fills me with joy because it is so unlike these languages and I get to watch people grow when they stop kicking and screaming and learn it. JavaScript doesn't have any super unique features or anything; it's just so not Java while frequently being suddenly essential to people who think in Java.