[1] https://github.com/jashkenas/coffeescript/wiki/List-of-langu...
To pre-empt the inevitable response that everything you want to do is possible inside the javascript sandbox: for a lot of people everything they want to do is possible inside the iOS app store restrictions. That still doesn't make iOS an open platform suitable for general computing, and neither is FirefoxOS.
FirefoxOS and ChromeOS are attacks on general purpose computing just as much as iOS is.
Every platform has one "base" language - even rms' laptop can only run MIPS instructions; everything else must be compiled or interpreted. FirefoxOS just uses JS as its base language.
If having restrictions on the runtime is your criteria for judging whether or not it's "general purpose" or not then every platform with a kernel fails because everything is subject to the restrictions it imposes.
But Firefox is in control of its sandbox. It has provided a lot of native API access that other platforms don't have.
Trying to divine somethings "general purpose" via just evaluating the runtime is murky and distracts from the core issue.
By the root standard iOS fails completely.
ChromeOS, Android and FirefoxOS all get middling grades in this.
That being said, consumer devices need to be able to pass a sort of "slave test"; if your device can't hook up to a printer/scanner, or other peripherals, it is a device meant to enslave you in a digital jail.
Mozilla seems to be the best citizen thus far when it comes to user rights, and I wouldn't expect that stance to change much due to a different formfactor. this is still very much the same project JWZ founded.
First, by what criteria is JavaScript not "a real language" whereas Ruby and Python are "real" languages?
Second, in any case, among the languages on that list that compile to JavaScript are both Ruby and Python, which I think meets any reasonable definition of a "a real language, like Python or Ruby".
Or even C via asm.js?
The problem with alternate languages is that people won't use them if browsers don't support them, and browsers won't add support for them if people don't use them. JS became a de-facto standard due to being included in early browsers and is certainly hard to unseat due to the tremendous momentum it gained.
I tried kivy with a lot of enthusiasm, and the experience was not good. React native does a better job, I think (or just React in FF OS). I say it as a programmer whose favorite language was Python for many years, I even coded a Python-to-JS compiler with classes, inheritance and stuff where other attempts were very too basic or too slow... Now my favorite language is CoffeeScript.
The sooner this idea dies, the sooner we can solve the actual problem of being locked to an insanely high level VM and calling it a platform -- while writing that platform with much more powerful tools that aren't available to anyone else.
The sooner this idea dies, the sooner we can solve the actual problem of being locked to an insanely high level VM
So, the sooner we stop making actual things, we can take a step back and start making a thing that makes things?
By all means, try to solve this problem. But if the history of the web has shown anything, it's that it's extremely difficult to entirely reboot anything. JavaScript is all pervasive, and an alternative is going to have to come up with something brilliant to displace it. I haven't seen it yet.
No, it's the compilation target web developers have. The rest of us don't target the web.