Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That's a great attitude for the browser--and I completely agree that decentralization is important for the browser--but does your opinion here extend to server-side JS as well?


JS is a language, and my opinion is that languages should be maximally flexible. They must be maximally flexible because a language has the primary function of being the medium through which an individual might transmit their ideas. Since ideas are not limited, languages must not be limited. Server-side JS is still a language. Limiting the language will limit what can be expressed in that language. So, yes, I would say it extends to server-side JS. By simply moving expression upstream it does not change my opinion.

There is that saying, "The Medium Is The Message." The more restrictive the medium, the more restrictive, the more pre-defined, the message is by default. The less restrictive the medium, the less well defined is the default message.

https://en.wikipedia.org/wiki/The_medium_is_the_message


except that we have many languages, each of which is designed for a slightly different purpose. It is generally more useful to have a wide range of single-purpose tools that can do one job very well, rather than a general-purpose tool that can do lots of things badly.

If you want an analogy, think of a knife. It can be used to cut things very well, but also serves as a really bad screwdriver, bottle opener, toothpick, tent peg, etc. Better to have a tool for each of these tasks than cut your thumb open mis-using your knife.

We maybe need one general-purpose language for trying new stuff out (and I'd argue that that language is actually LISP). The rest need to be single-purpose, designed to do a single job.

Javascript is designed to run in browsers, and recently to run on a server (mostly as a web server). Trying to write real-time systems (for example) in javascript is a bad idea; you can do it, but you will cut your thumb open and there are much better languages available to do it in.

I think the core point I'm trying to make is that programming languages are engineer's tools rather than artistic media. We use the tools to build the thing we want. Tell an engineer that the hammer is the thing being built and they'll tell you you're an idiot.


Are you suggesting for browsers to be sandboxed execution environments ?

Then it will be more like Java Applets or Flash applications, I think some restrictions have lead to better index ability(hyperlinks, search engines) , accessibility in web.

A better medium doesn't necessarily mean untamed or freer medium. If restrictions can create a medium which has better accessibility, then maybe they are not so bad.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: