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.
As Pyro develops it will incorporate code from external libraries and projects released under permissive open source licenses — e.g. MIT, BSD, or public domain. These inclusions will be noted here.
-
Like most modern programming languages, Pyro stands on the shoulders of giants. Particular thanks must go to all those who have built, maintained, and expanded the C programming language and its standard library over the years — their work provides the foundation on which Pyro is built.
-
Many of the implementation's core mechanics were adapted from or inspired by Lox, the sample language from Bob Nystrom's Crafting Interpreters book. This code was released under the MIT license.
-
The
std::prng
module's Mersenne Twister was adapted from the original implementation by the algorithm's inventors, Takuji Nishimura and Makoto Matsumoto. This code was released under the 3-clause BSD license. -
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 ships with a builtin copy of the SQLite database engine. This code has been placed by its authors in the public domain.