MoonScript v0.2.2

Today marks MoonScript version 0.2.2, the CoffeeScript inspired language that compiles to Lua. It’s been approximately 11 months since the last release, and I'd like to apologize for the long gap. Hopefully we'll see more frequent updates in the future.

We've got a handful of new features and fixes:

You can follow me on twitter for updates or complaints. Also if you're using MoonScript I'd love to hear about it:


New Things

The Language


The Tools

Bug Fixes

  • Significantly improved the line number rewriter. It should now accurately report all line numbers.
  • Generic for loops correctly parse for multiple values as defined in Lua.
  • Update expressions don’t fail with certain combinations of precedence.
  • All statements/expressions are allowed in a class body, not just some.
  • x = "hello" if something will extract the declaration of x if it’s not in scope yet. Preventing an impossible to access variable from being created.
  • varargs, ..., correctly bubble up through automatically generated anonymous functions.
  • Compiler doesn’t crash if you try to assign something that isn’t assignable.
  • Numerous other small fixes. See commit log.

Other Stuff

Since the past release I've written quite a bit of MoonScript. I wrote four games, feel free to check out the source code:

I've written a tutorial for installing MoonScript on the three main platforms, Windows, OSX, and Linux.

I've written a script and guide for running Lua on Heroku. Which lets us also run MoonScript. This opens up quite a few opportunities, more on that later.

Bitbucket now highlights MoonScript files. If you'd like to see MoonScript on GitHub say something here:


That’s all for this release. Thanks to everyone who submitted bugs and patches and provided feedback on GitHub. See you next release.