Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add compiled quickfall format #29

Closed
Zffu opened this issue Dec 1, 2024 · 0 comments
Closed

Add compiled quickfall format #29

Zffu opened this issue Dec 1, 2024 · 0 comments
Assignees
Labels
compiler Signifies a compiler change. stdlib
Milestone

Comments

@Zffu
Copy link
Member

Zffu commented Dec 1, 2024

Add a special format which is compiled down to the assembly level.

Format specification

The file will be encoded in bytes and not string and will be made up of compiled nodes that will have the following structure:

Field name Field type Field size (in bytes) Description
Node Type Byte 1 Determines the internal node type
Node name length Integer 4 The length of the node name buffer in bytes
Node name char[] defined with Node name length The node name buffer
Type buffer length Integer 4 Determines the size of the type / special buffer.
Type / special buffer byte[] Determined by the type buffer length. Stores special properties such as type determinations.
ASM buffer length Integer 4 The length of the ASM buffer of the node. Only present if the node type determines it.
ASM buffer byte[] defined with ASM buffer length The ASM node buffer. Only present if the node type determines it.

Benefits

This format will mostly benefit the usage of the std library. Currently when using any component of the lib, it needs to compile it, however, using the compiled quickfall format, the standart library will be already compiled allowing for a way better usage of the standart lib.

@Zffu Zffu added compiler Signifies a compiler change. stdlib labels Dec 1, 2024
@Zffu Zffu self-assigned this Dec 1, 2024
@Zffu Zffu added this to Quickfall Dec 1, 2024
@Zffu Zffu added this to the 1.0.0 milestone Dec 1, 2024
@Zffu Zffu moved this to Todo in Quickfall Dec 1, 2024
@Zffu Zffu moved this from Todo to Done in Quickfall Jan 9, 2025
@Zffu Zffu closed this as completed by moving to Done in Quickfall Jan 9, 2025
@Zffu Zffu moved this from Done to In Progress in Quickfall Jan 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler Signifies a compiler change. stdlib
Projects
Status: In Progress
Development

No branches or pull requests

1 participant