—

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: leafot@gmail.com.

Changes

Compiled files will now implicitly return their last statement. Be careful, this might change what require returns.

New Things

The Language

The API

The load functions can take an optional last argument of options.

The online compiler now runs through a web service instead of emscripten, should work reliably on any computer now.

Windows binaries have been updated.

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.

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.

will extract the declaration of 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.

, 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: https://github.com/github/linguist/pull/246.

Thanks

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