Acknowledgements
I was inspired to build Pyro by reading Bob Nystrom's wonderful book Crafting Interpreters, so many of the cleverest ideas in the implementation build on his work.
All code unique to Pyro is released under the Zero-Clause BSD (0BSD) license.
Code incorporated from external libraries and projects will be listed below. (Pyro will only incorporate code released under permissive open source licenses — e.g. MIT, BSD, or public domain.)
-
The REPL uses the Bestline library by Justine Tunney to provide support for line-editing. This code was released under the 2-clause BSD license.
-
Pyro's pseudo-random number generator uses the
xoshiro256**
algorithm by David Blackman and Sebastiano Vigna. The implementation is based on code by the original authors released into the public domain. -
The
std::pyro::path()
lookup uses the whereami library by Grégory Pakosz. This code is dual-licensed under the MIT and WTFPLv2 licenses. -
The mechanism for embedding files in the Pyro binary uses the LZ4 compression library. This code was released under the 2-clause BSD license.