MicroStudio now supports microScript, Python, JavaScript and Lua
microstudio.dev
microstudio.dev
Edit: Working with 128x128 on purpose, for nostalgia purposes. It's a sort of contrived historical machine they are pretending existed. A slick IDE wouldn't fit with the project's purpose. Though you can edit the programs with any external editor you want.
I love how you can move a function definition from a class to outside of a class or even into an object “literal” without breaking syntax.
And same with variables, you can restructure it from a global into a class property or as a property of an object literal.
It looks even more intuitive and forgiving than lua and lua was already a joy
Yes and if you click “microScript programming” in the menu you are taken to the language itself.
Didn’t find a way to link to that part but it’s just one click away.
Actually more important is, that you can move them into a class of object literal. And way more languages should be designed with that in mind.
> And same with variables, you can restructure it from a global into a class property or as a property of an object literal.
This allows you to just start to write code as a script, and then effortlessly partition it into functions, classes and files as need arises.
Another thing I'd like to see more in languages is keeping consistent interface across various data structures. You should be able to swap out array for a set, hash table, or even something weird without rewriting half of your code that touches it.
But I will give them credit: Clicking the top-left icon immediately brings you to a page with that clear tagline and some nice images.
https://github.com/morgan3d/quadplay
https://morgan3d.github.io/quadplay/console/quadplay.html?ID...
https://github.com/nesbox/TIC-80/wiki#pro-version
Edit: actually, reading https://github.com/morgan3d/quadplay/blob/main/LICENSE.md it looks like it's only partially free (not unlike markdeep, another of the author's projects).
One question though if the author is here, looking at the documentation for javascript, it seems very short. Is it all "backwards compatible" (wrong term I know) with microcode? I.e. does the API reference apply as-is to javascript without any other changes? Or perhaps there are new documentation changes pending?
But it's a bit like Love2D with a few language options and batteries included (sprites//etc.)
* Computers are really, really fast. If you're not deliberately or unintentionally slowing them down even a dynamic language can do an awful lot of work.
* JIT compilation is really good for a couple of languages. LuaJIT has been a popular embedded language for games for that reason for a while. JS JITs are also pretty incredible.
* They're most commonly used for gameplay code which tends not to be the performance bottleneck of a game engine anyway. Where it is you usually have great interop and just rewrite the offending code in the native language.
The interesting choice here is to run interpreter(s) on top of what seems to be a JavaScript (compiled from CoffeeScript) based engine. Although it does look like they want to translate the microScript code to JS.
Another thing is that when making games a scripting language can be easier to use by members of the team who may be good at game design but not good at programming in C++. It is also convenient to be able to edit the scripts without needing to recompile and restart the game.
In the case of Lua, one thing that makes it popular for games is that it is very small and also easy to embed. It was designed for ease of embedding.
But then again 5 years ago hardware was worse; 10 years ago even worse; 20 etc etc. Games had less content but there were still good games, as good as modern ones. Game enjoyability doesn't depend that much on the scale of its content. If a dynamic language pulls the resources down to what they were 5-10 years ago you can still make enjoyable games.
That being said, for peace of mind, I do wish engines like Godot had chosen a strongly typed language. I use Godot myself and much prefer it to other engines I've used, but I can't shake the feeling the GDScript sacrifices performance for ease of learning, even if it happens to not be true. I know theres Godot C# as well but that still doesn't feel like first class supported, though maybe I'm wrong
Is it difficult to add new languages? I'd love to see Clojurescript support. :)
But why is text selection disabled on the homepage?
html,body {
user-select: none;
}Please, never do that.
Text selection is now enabled on the "home page" content.
Both are FOSS environments that are suitable for quick graphics programming in a minimal language.
Of course theres a lot of overlap between the two, but I'd guess Processing is more powerful (or at least, more easily powerful) for pure graphics rendering than MicroStudio, but MicroStudio can do a lot more (or again, at least a lot more easily), like handling inputs and playing sounds and so on