diff --git a/.gitignore b/.gitignore index aa6cc58..6278669 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ build .vscode C/watl.v0.msvc.c.listing.txt +watl_exercise.user +watl_exercise.proj diff --git a/C/watl.msvc.md b/C/watl.msvc.md index fe05352..0a8caf0 100644 --- a/C/watl.msvc.md +++ b/C/watl.msvc.md @@ -2,6 +2,8 @@ Documention for the file is kept separate for the sake of compact definitions. +***TODO(Ed): This doc is outdated!*** + ## Organization The file is segregated with region pragmas with the following hierarchy diff --git a/C/watl.v1.msvc.c b/C/watl.v1.msvc.c index e69de29..645e333 100644 --- a/C/watl.v1.msvc.c +++ b/C/watl.v1.msvc.c @@ -0,0 +1,7 @@ +/* +WATL Exercise +Version: 1 (From Scratch, 1-Stage Compilation, MSVC & WinAPI Only, Win CRT Multi-threaded Static Linkage) +Host: Windows 11 (x86-64) +Toolchain: MSVC 19.43, C-Stanard: 11 +*/ + diff --git a/C/watl.v2.msvc.c b/C/watl.v2.msvc.c index 87c6d21..b88998f 100644 --- a/C/watl.v2.msvc.c +++ b/C/watl.v2.msvc.c @@ -1,15 +1,13 @@ /* WATL Exercise -Version: 2 (From Scratch, 2-Stage Compilation) - -Vendor OS & Compiler: Windows 11, MSVC +Version: 2 (From Scratch, 2-Stage Compilation, MSVC & WinAPI Only, Win CRT Multi-threaded Static Linkage) +Host: Windows 11 (x86-64) +Toolchain: MSVC 19.43, C-Stanard: 11 */ #if GEN_TIME == 1 #include "gencpp_c11.h" - - int gen_main() { diff --git a/Readme.md b/Readme.md index fa26e40..d603001 100644 --- a/Readme.md +++ b/Readme.md @@ -1,10 +1,10 @@ # WATL Exercise -An exercise on making the simplest useful parser with different languages or conventions. -The purpose of this exercise is convey succiently many pragmatic concepts for code in a small program. +An exercise on making the "Whitespace Aware Text Layout" parser with different languages or conventions. It simply gets a structural idea of the lines and chunks (visbile and whitespace) for a text file. +The purpose of this exercise is convey succiently many core pragmatic concepts for code in a small program. The intent was to use this as a working set of samples for my code visualizing and editing prototyping. -The C code conveys a convention for doing C I've synthesized after studying how several people in the "handmade" community have written their exposed libraries or codebases. +The code conveys a convention for doing "systems" programming I've synthesized after studying how several people in the "handmade" community have written their exposed libraries or codebases. The goal of the exercise is always the following: @@ -33,16 +33,12 @@ Embeddable scripting languages will be embedded as they should be. ## TODOs -Not all of these may ever be completed... - * [x] Single-threaded C example * [] Multi-threaded C example * [] Add basic timing benchmark to C examples * [] Add profiling support C examples -* [] Make C++ examples -* [] Add basic timing benchmark to C++ examples -* [] Add profiling support C++ examples * [x] Single-threaded Odin example +* [] Single-threaded Odin ideomatic example * [] Add basic timing benchmark to Odin examples * [] Add profiling support Odin examples * [] Single-threaded nasm example @@ -51,6 +47,12 @@ Not all of these may ever be completed... * [] Multi-threaded FORTH example * [] Single-threaded lua example * [] Multi-threaded lua example + +### Maybe + +* [] Make C++ examples +* [] Add basic timing benchmark to C++ examples +* [] Add profiling support C++ examples * [] Single-threaded C# example * [] Multi-threaded C# example * [] Single-threaded F# example