Computer Science Canada

Turing Low-Level Documentation

Author:  dropdembits [ Tue Jun 23, 2020 12:31 pm ]
Post subject:  Turing Low-Level Documentation

Turing Low-Level Documentation

Over the past couple of weeks, I have spent some time trawling through (Open)Turing's source code to understand the deep, inner workings.
I have compiled these efforts into a few files, which can be found at this Github repository.

In this repository are the following files:

  • turing_abort_codes.txt: Internal abort code numbers and their translations
  • bytecode_header.c: Format of the bytecode files packed inside compiled & exported Turing programs
  • Document describing uninitialization patterns used by the UNINIT and NEW* family of opcodes
  • Reference for all of the valid opcodes used by the TProlog bytecode interpreter. (Mostly complete)

Most of the files there have complete information, but the opcode reference is still missing bits of information (and needs a bit of cleanup).

Combined with Foundry's runtime reflection library, I hope to see what this information can be used for.