Replace Lua with JavaScript

lamefun
New member
 
Posts: 7
Joined: Sun Mar 17, 2013 15:41

Replace Lua with JavaScript

by lamefun » Fri Mar 22, 2013 23:55

I've seen some discussions about adding LuaJIT into Minetest. I think it would be better to replace Lua with JavaScript.

Lua:

+ Very clean language design.

- Some backwards incompatiabilty, Lua isn't as popular as JavaScript, so they aren't pressured to keep perfect compatiability.

- The LuaJIT interpreter is a one-man project, so it can be abandoned. As far as I can see, there isn't much interest in fast Lua. Developing JIT is a very complex and time-consuming task that requires large computer science knowledge, it's unlikely that that Minetest developers will be able maintain it (correct me if I am wrong).

JavaScript:

+ JavaScript is rapidly becoming the official programming language of planet Earth. It's the main programming language of the Web, the recommended language of Windows 8, the recommended language of GNOME 3 and KDE 5 will be utterly inseparable from it.

+ There are several free software high-quality JavaScript interpreters developed by large teams (Firefox SpiderMonkey by Mozilla, Chrome v8 by Google, WebKit Nitro by Apple). The competition for JavaScript performance competition among the browsers ensures that they will only get faster over time (http://arewefastyet.com).

+ Due to the two above points JavaScript is reliable long-term. There will always be at least one free software fast JavaScript interpreter (if there isn't, it means that free software web browsers are gone, which in turn means that that the Shiny New World, the locked world, the world for people has already come and free software is doomed and we should switch to immutable locked games for PEOPLE).

+ JavaScript interpreters were explicitly designed to run untrusted code, so installing mods will be safe.

+ JavaScript is highly backwards compatible, as changing it would ruin countless Web applications.

+ JavaScript has more features like bit operations, typed arrays, the new standard ECMAScript 6 will have built-in classes, maps, sets, etc.

- All old warts are kept forever due to backwards compatiability.
Last edited by lamefun on Fri Mar 22, 2013 23:57, edited 1 time in total.
 

User avatar
VanessaE
Member
 
Posts: 3894
Joined: Sun Apr 01, 2012 12:38
GitHub: VanessaE
IRC: VanessaE
In-game: VanessaEzekowitz

by VanessaE » Fri Mar 22, 2013 23:59

This has already been discussed to death in IRC. We are not switching to javascript.
You might like some of my stuff:
Plantlife ~ More Trees ~ Home Decor ~ Pipeworks ~ HDX Textures (16-512px)
Tips (BTC): 13LdcdUFcNCFAm7HfvAXh5GHTjCnnQj6KE
 


Return to Minetest Features

Who is online

Users browsing this forum: No registered users and 7 guests

cron