Commit graph

5 commits

Author SHA1 Message Date
aa3d7b6902 updated usage instruction numbering for better forgejo compatibility
All checks were successful
per-push tests / build (push) Successful in 39s
per-push tests / test-frontend (push) Successful in 38s
per-push tests / test-utility (push) Successful in 39s
per-push tests / test-backend (push) Successful in 38s
per-push tests / timed-decomposer-parse (push) Successful in 35s
2025-12-04 14:27:53 -07:00
3d970a5a23 add usage instructions (#46)
All checks were successful
per-push tests / build (push) Successful in 39s
per-push tests / test-utility (push) Successful in 38s
per-push tests / test-frontend (push) Successful in 38s
per-push tests / test-backend (push) Successful in 39s
per-push tests / timed-decomposer-parse (push) Successful in 38s
Adds user commands to set up the Mycelium environment for usage and development

Reviewed-on: #46
Co-authored-by: Kolby Heacock <codeshiftster@gmail.com>
Co-committed-by: Kolby Heacock <codeshiftster@gmail.com>
2025-12-04 12:52:48 -08:00
389bf6e9a0 serialization/deserialization of datum in VM
All checks were successful
per-push tests / build (push) Successful in 1m34s
per-push tests / test-frontend (push) Successful in 41s
per-push tests / test-utility (push) Successful in 45s
per-push tests / test-backend (push) Successful in 44s
per-push tests / timed-decomposer-parse (push) Successful in 50s
This commit adds logic to serialize and deserialize datum, as well
as the start of some total binary format. It implements serialize
and deserialize routines per datum type. Tests are included for
comples cases. Similar code existed in the organelle package which was
then centralized here.

Additionally: this commit makes release target binaries smaller and
faster

Signed-off-by: Ava Affine <ava@sunnypup.io>
2025-11-25 21:53:21 +00:00
528a61749d Readme and early CI
This commit prepares the code to be uploaded to gitlab.
Included is a small readme and basic CI.

Signed-off-by: Ava Affine <ava@sunnypup.io>
2025-05-21 15:10:44 -07:00
6554a0639a Lexer and S-Expression data types
The lexer is complete with tests. It fully encapsulates the logic
of splitting an input document into a stream of tokens. It can be
instantiated from an Rc<str>, meaning no lifetimes need be managed
references to the original document (like a stringview) can be
passed around carelessly. The Lexer implements the iterator
method which should help elegantly design repls / compilers, etc.

The S-Expression data type represents the parsed AST. The actual
parsing logic is yet to be added. It is intended that the AST be
the last step before compiling to bytecode. The data representation
here is cons cells of datum. Formatting is implemented.

Signed-off-by: Ava Affine <ava@sunnypup.io>
2025-05-07 09:19:33 -07:00