CREXX

REXX Language implementation

View the Project on GitHub adesutherland/CREXX

About This Book

This book documents the \crexx{} virtual machine, RXAS assembly language, and RXBIN bytecode format used by Release 1 beta 1.

The programming guide describes how to build and run programs. This book is for readers who need the lower-level model: RXAS authors, compiler and linker contributors, VM embedders, native plugin authors, and anyone debugging the generated bytecode.

The VM is the execution target for the current Level B compiler. Level B is a typed REXX-family systems language; it is not a complete Classic REXX compatibility layer.

The main pipeline is:

  1. rxc compiles .rexx source to .rxas assembly.
  2. rxas assembles .rxas to .rxbin bytecode.
  3. rxlink optionally combines modules into a linked image with one shared constant pool.
  4. rxvm and related interpreters execute RXBIN bytecode.

Where this book discusses implementation structures, it describes the current C implementation as a guide to the ABI and runtime model. Internal structures can change; the public contract is the RXAS/RXBIN behaviour and the embedding APIs exposed by the project headers.