Login
7 branches 0 tags
Ben (X220t/Win10) Fixed GC marking invalid memory 7f20eb2 4 years ago 95 Commits

Nujel

A Lisp inspired language for games and other latency sensitive applications. Developed to give WolkenWelten a scripting layer.

Operating System Master Develop
Windows Windows Windows
MacOS MacOS MacOS
Ubuntu Ubuntu Ubuntu
Operating System CI Status
Alpine Linux builds.sr.ht status
FreeBSD builds.sr.ht status
NetBSD builds.sr.ht status
OpenBSD builds.sr.ht status

Infix operations

One part that is quite different to most Lisps is that one can evaluate [display [1 + 2 * 3]] and get 7, as one would expect from other languages. This is due to each type having a convenience function associated to them, which is an infix evaluator in the case of the numeric types, or cat for strings and arr-ref for arrays. So you can also write [display ["The result is: " [1 + 1]]]. Or [display [#["Yay" "Nay"] 0]].

Static Typing

Nujel will use a static type system, since this makes it much easier to generate fast code. By using type inference and multiple dispatch the inconvenience shouldn't be too big.