aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md7
1 files changed, 5 insertions, 2 deletions
diff --git a/README.md b/README.md
index f4f228c..fc7d054 100644
--- a/README.md
+++ b/README.md
@@ -11,9 +11,12 @@ Every stage of the compiler is multithreaded and data copy is kept to a minimal,
is done without storing tokens in a list. Almost all allocation is done using an arena allocator that
is only cleaned up once (when the compiler is finished), and the data is allocated sequentially.
# TODO
-Build with -nostdlib and replace use of libc with syscalls (on linux).
+Build with -nostdlib and replace use of libc with syscalls (on linux).\
Don't parse files unless the variable they are assigned to (with @import) is used. This is useful when only using small parts of a library.
-Align machine code to word boundary for the start of functions. No need to pad with NOP, as functions return before the padding.
+This could be done checking if an AST expression is referenced before evaluating it. There would then need to be a compile option
+that compiles everything even if not referenced, since another user of the program/library may use the functions that are not used in your program
+and they might have compile-issues.\
+Align machine code to word boundary for the start of functions. No need to pad with NOP, as functions return before the padding.\
Use const to cleanup ANSI C style variable declarations, since const allows you to declare and assign variables on the same line.
# Documents
Documents are located under doc. The file doc/Documentation.md is generated from source files by running doc/doc_extract.py