Skip to content
This repository
tree: 6905b60003
Fetching contributors…

Cannot retrieve contributors at this time

file 81 lines (53 sloc) 2.051 kb

This is 'Niecza', which will eventually be a Perl 6 implementation focusing on optimization research. It targets the Common Language Runtime (ECMA-335; implementations are "Mono" and ".NET").

There is also a Common Lisp backend in the works.

To see the current state of the art, the best documentation is the testsuite, test.pl.

  • To run on Mono: You will need 2.8.x or higher. 2.8.2 or later is recommended for best performance; you should use RUN_CLR=mono-sgen in this case. 2.10 (latest stable) is also tested.

    To run on Windows/Mono (2.8.2 and 2.10) and other systems, download the mono installers from http://go-mono.org/

  • To run on Windows/Microsoft .NET 3.5 (2.0 runtime with 3.5 extensions) or .NET 4.0, install the .NET runtime from http://goo.gl/PMKvB

  • wget (to fetch a bootstrapping binary).
  • GNU make
  • unzip

    $ make
    ... snip build spam ...
    $ mono run/Niecza.exe
    niecza> say 2 + 2
    4
    niecza> ^D
    $ mono run/Niecza.exe -e 'say 2 + 2'
    4
    $

Notes: The first time the compiler is run, the setting must be compiled, which adds about a minute on most hardware to the runtime. The second run will be much faster. Also, the recompilation checker is not robust to file format changes; it may be necessary to clean temporary files after updates.

Building on Windows currently requires the Cygwin environment with Mono's gmcs.exe in your Cygwin shell's $PATH, though in principle .NET's csc.exe could be made to work eventually, if it doesn't already.

Niecza is Copyright 2010 Stefan O'Rear et al. It may be used and distributed under the Artistic License 2.0 (included under LICENSE).

This project was originally a spin-off of experiments done for Matthew "diakopter" Wilson's sprixel project, and was heavily inspired by many of its lower-level details.

Something went wrong with that request. Please try again.