I have published yesterday the first draft of Red/System’s specifications. It is amazing how much time and energy writing such formal description can take. It is a working draft, so expect it to be updated often during next weeks. The document source is in MakeDoc format and stored on github, so feel free to fix typos and errors directly there.
As all features in the specifications are not yet implemented (I would say 85% is already done), I have added a todo-list on github’s wiki to track the missing parts.
Also, all features are not yet set in stone, there are still a few important design decisions to take in the next weeks:
p: &[integer! 0] p/value: 123 p: struct [value [integer!]] p/value: 123
Looks pretty much the same. Pointers have a shorter literal form, but once declared, structs could be used the same way and replace pointers in all use-cases.
The answers to these questions will come while working on unit tests and coding Red’s runtime (written in Red/System). Feel free to share your thoughts about these features here, in comments, or on Google groups.