[ANN] Shine-0.0.2 - A Shiny Lua Dialect

  • From: Richard Hundt <richardhundt@xxxxxxxxx>
  • To: luajit@xxxxxxxxxxxxx
  • Date: Sat, 29 Mar 2014 00:33:30 +0100

Hi,

I'm pleased to announce the first earlyrelease of Shine [1].

Shine is a programming language which is a loose super-set of Lua, and
is built on TvmJIT [2], a modified version of LuaJIT by François Perrad.

The project - initially under the working name of Nyanga - grew out of
seeing common requests for additions to the Lua language, such as a
`continue` statement, ranges, default function parameters and shorthand
arithmetic assignment expressions (x += 1), to name a few.

The language and runtime has since grown further to include many
additional features, some of which are experimental, and all of which
I'm happy to take feedback on. And because I still love Lua, Shine runs
vanilla Lua just fine.

Notable extensions to Lua include:

* Bitwise operators.
* Standard libraries (mostly FFI based).
* LPeg language integration.
* Classes and modules .
* `continue` statement.
* `try`, `catch`, `finally`
* Destructuring assignment.
* Pattern matching.
* Default function parameters.
* Function parameter guards.
* Richer type system.
* Concurrency primitives
* OS Threads(experimental)

Shine currently compiles on OS X and Linux. Work is under way on getting
it to compile on MinGW.

[1] https://github.com/richardhundt/shine
[2] https://github.com/fperrad/tvmjit

Feedback welcome!

Kind regards,
Richard

Other related posts: