Nix flake for RPython interpreters
Rev. | 时间 | 作者 | Message RSS |
e0d54da7 | 2024-06-06 13:57:37 | Corbin | regiux: Stub out binary ops. The provided addition op wo... |
72d1f1b4 | 2024-06-06 13:24:06 | Corbin | regiux: Add string literals. There's some future work to... |
741ecbca | 2024-06-05 00:06:13 | Corbin | Switch over to PyPy bootstrap. It's faster overall -- 30... |
f528ed9a | 2024-06-02 13:21:41 | Corbin | bf: Correctly compile empty loops. They are used as comm... |
801ef89e | 2024-06-02 12:19:53 | Corbin | bf: Recognize two-destination scale-and-add operations. ... |
04f13a7b | 2024-05-25 11:28:14 | Corbin | regiux: Implement Booleans and if-expressions. |
00d13781 | 2024-05-24 17:10:55 | Corbin | Add Pixie. Also do a bunch of required fixups. Pixie doe... |
7b377235 | 2024-05-24 16:11:57 | Corbin | Uniformly build all three PyPys from a single file. We n... |
1530ce8f | 2024-05-15 11:09:37 | Corbin | reguix: Wire up basic inherits. |
784b438c | 2024-05-15 09:47:55 | Corbin | reguix: Implement builtin attrset and application. I had... |
This flake offers implementations of the following languages:
Language | Attribute |
---|---|
Brainfuck | bf |
DIVSPL | divspl |
LR35902 "Game Boy" | pygirl |
Nix | regiux |
Pixie | pixie |
Prolog | pyrolog |
Python 2.7 | pypy2 |
Python 3.10 | pypy3 |
Ruby | topaz |
And its helpers are used by the following flakes:
Language | Downstream |
---|---|
Monte | typhon |
These implementations have one thing in common: they are written with RPython, a restricted subset of Python 2.7 which is amenable to static analysis. Using the RPython toolchain, they may be translated to efficient native interpreters with optional JIT functionality.
This flake supports fifteen different systems covering all supported upstream system configurations. If PyPy officially supports a system, then this flake should support it as well.
This flake bootstraps RPython semi-independently of nixpkgs
. It uses stdenv
to build a CPython for Python 2.7, then uses CPython to build PyPy for Python
2.7 with minimal dependencies. This PyPy is then used to run RPython for all
other builds.
This flake does not support cross-compilation. This may be a permanent restriction, since RPython generally translates binaries for its build system only.
There is not yet a contribution workflow; contact Corbin directly to send patches or pull requests. Individual interpreters can be added to collaborative organizations on forges; inquire for details.
Welcome to OSDN Wiki system. Here is your chamber Wiki space.
Check Wiki Guide (English) to refer syntax and functions.
[PageInfo]
(auto generated page)
[Permissions]
view:all, edit:admins, delete/config:admins