From 64ade5e31ce1b703d03b46034126c1569434578c Mon Sep 17 00:00:00 2001 From: Ava Affine Date: Thu, 14 Aug 2025 07:20:03 +0000 Subject: [PATCH] WIP: elaborate on Hyphae in instructions.toml Signed-off-by: Ava Affine --- hyphae/instructions.toml | 58 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 54 insertions(+), 4 deletions(-) diff --git a/hyphae/instructions.toml b/hyphae/instructions.toml index 9fd0b38..6d817b0 100644 --- a/hyphae/instructions.toml +++ b/hyphae/instructions.toml @@ -1,12 +1,62 @@ +description = """ +HyphaeVM is a bytecode VM that aims to provide a simplified instruction set to +language implementors and other programmers who wish to use higher level +features without making too many compromises on overhead or performance. + +The simplified instruction set greatly reduces the work in language design and +allows for simpler compilers overall. Meanwhile, the VM still meets performance +needs for modern application development. + +HyphaeVM contains an instruction set, instruction set implementation, garbage +collection (reference counting), error handling, dynamic number package, vector +based data types, cons cell based dynamic data types, and trap functions that +are programmatically extendable. +""" + +[[data_types]] +name = "number" +description = """ +""" + +[[data_types]] +name = "string" +description = """ +""" + +[[data_types]] +name = "bool" +description = """ +""" + +[[data_types]] +name = "cons" +description = """ +""" + +[[data_types]] +name = "symbol" +description = """ +""" + +[[data_types]] +name = "char" +description = "a single byte" + +[[data_types]] +name = "vector" +description = """ +""" + +[[data_types]] +name = "ByteVector" +description = "a vector that only contains single bytes" + # TODO: add the following info -# - introductory VM info (description, list of components) -# - info on the different data types -# - info on garbage collection -# - info on program execution # - info on error handling # - info on traps # - info on numbers # - info on symtable (and its uses) +# - multiline descriptions for each instruction [[addressing_modes]] name = "expr"