Ren-C is an interim fork of the Apache 2.0 open-sourced Rebol codebase. The goal of the project isn't to be a new language or a different console, rather to provide a smooth API for embedding a Rebol interpreter in C programs. This API would offer nearly the full range of power that is internally offered to the core, making it easy to write new clients or REPLs using it.
Because the API is not fully ready for publication, the current way to explore the new
features of Ren-C is using the
r3 console built by the makefile. It should function
nearly identically (though it has been extended through user contribution to support a
multi-line continuation method similar to Rebol2.) For those interested in a more
novel application of the Ren-C library, see the C++ binding and Ren Garden.
In the process of designing the library, Ren-C also aspires to solve several of the major outstanding design problems that were left unfinished in the R3-Alpha codebase. Several of these problems have been solved already--and for progress and notes on these issues, a Trello board is frequently updated to reflect a summary of some of the changes.
For more information, please visit the FAQ:
Feel free to add your own questions to the bottom of the list.
To promote the Rebol community's participation in public forums, development discussion for Ren-C generally takes place in the Rebol and Red StackOverflow Chat.
It is also possible to contact the developers through the Ren-C GitHub Issues
page. This should be limited to questions regarding the Ren-C builds specifically, as
overall language design wishes and debates are kept in the
of Rebol's GitHub.
There are currently two build systems in Ren-C: plain make files for basic features, and CMake for extended features.
- With plain make files
First get the sources -- from cloning the repository with
git, or downloading a ZIP:
Next you need to get a pre-built R3-Alpha interpreter, rename
r3-make.exe, and put it in the
make -f makefile.boot
The platform to target will be assumed to be the same as the build type of the
r3-make you use. If your needs are more complex (such as doing a cross-compilation,
or if the
system/version in your r3-make doesn't match the target you want), refer
to the bootstrap makefile
(Note: Ren-C's build process cannot be performed with Rebol2. It requires R3-Alpha or Ren-C itself. However, it can build using an old pre-open-source R3-Alpha A111.)
- With CMake