Welcome to the Reddoc develop wiki!
Not the official Red language project.
Documenting the Red toolchain
These pages contain information to help in development of the Red Programming language. In the first place to document the inner structure of the programs that make the Red language and the Red/System language. In second place it is to aid in getting joining developers up to speed in grasping what is going on. And in the third place it is to join hands in some development of uncovered grounds. Perhaps even contributing to the official project.
This wiki is the continuation of the previous attempt to document the Red source code that was started at RedDevDoc not all information that can be found there has found its way to this wiki.
Why is this documentation needed?
The Red language in still in alpha phase. One day Red will be selfhosted and the Rebol dependency will be gone. At this moment the interpreter, compiler and linker are written in Rebol. So all this code is considered "throw away" code, it will all be disposed of. The definitive version of Red will have another structure as well, more modular than the current structure. The rewritten code will have little in common with this toolchain.
So why then is it important to document this throwaway code? From the point of the official development team there is little use in documenting it, and we also do not want them to waste their time on doing that. The envisioned timescale was that the development would reach the moment for disposing this throwaway code very soon. Given the time that has passed with previous releases, a simple sum tells us now that we will be seeing and using this code for some time to come.
In the meantime new enthousiast volunteers can use the docs to get up to speed and understanding to be able to contribute. Even when the transition to the real Red will be taken place after release 1.0.0 this is the code we all will be using to program and build extensions for.
Organisation of the Wiki
There are three subcategories of documents in this Wiki. General information, DOC GOALS and DEV GOALS documents.
A copy of the blog article on the Red/System Compiler is included here, because the article is a bit harder to find and often forgotten as a valuable resource.
Doc goals are documents that explain how certain existing features of the Red programming language are constructed. What features they offer, how they work and how they interact with the rest of the source.
- DOC GOAL Document Red/System
- DOC GOAL Document Red Core
- DOC GOAL Document Datatypes
- DOC GOAL Document LibRed
- DOC GOAL Document Red Bindings
- DOC GOAL Document Windows Support
- DOC GOAL Document macOS Support
Dev goals are the place where documentation is gathered to support development of the particular feature.
Contribute to this Wiki
If you want to contribute to this wiki, let me know and I'll add you to the contributors. All contributions are welcome, unless you want to talk about Rebol Virtual Machines. Don't worry about typos or plain mistakes, malformed English words and so on, in your additions, these will be repaired in time.
PLEASE NOTE that these are not officially supported documents.
This is a completely independent Wiki, with no relation to the Red development team at FullStack.
All information is added in best intent for the language but no guaranty is given about the correctness of any information to be found in here.