diff --git a/PROGRESS.md b/CHANGELOG.md similarity index 70% rename from PROGRESS.md rename to CHANGELOG.md index 6918965..25b007b 100644 --- a/PROGRESS.md +++ b/CHANGELOG.md @@ -1,6 +1,69 @@ -# SE 3250 Progress Checkpoints +# SLS Changelog -## Checkpoint 3 +## 0.0.2-alpha +*08 Dec 2025* + +- Added Rust Port +- Added Interpreter State Serialization to Rust port + - Added `#load ` and `#save ` directives to the REPL +- Added Python Port +- Added Calculator app + - Added sls_py.calc module +- Added RP2040 build target for the C implementation + +## 0.0.1-alpha +*01 Dec 2025* + +- Added executing a file +- Implemented the following builtin operators: + - `for` + - `logb` + - `max` + - `min` + - `rot` + - `const` + - `atan2` + - `roll` + - `while` + - `type_of` + - `eval` + - `lambda` + - `if` + - `pick` + - `dup` + - bitwise `and` + - bitwise `not` + - bitwise `or` + - bitwise `xor` + - boolean `and` + - boolean `not` + - boolean `or` + - `shl` + - `shr` + - comparisons + - `ceil` + - `floor` + - `round` + - `swap` + - `seed` + - `rand` + - `acos` + - `asin` + - `atan` + - `cos` + - `ln` + - `log` + - `sin` + - `sqrt` + - `tan` + - `abs` + - modulus + - exponential + - addition + - subtraction + - multiplication + +## SE Checkpoint 3 *28 Nov 2025* [github.com/SnowSE/final-project-KylerOlsen](https://github.com/SnowSE/final-project-KylerOlsen) @@ -28,7 +91,7 @@ I'm not really stuck on anything, but I am running out of time, plus I am worried about not having enough AI usage to do the ports. If I at least get the main structures of the ports, I hope it will be enough for me to finish. -## Checkpoint 2 +## SE Checkpoint 2 *20 Nov 2025* [github.com/SnowSE/final-project-KylerOlsen](https://github.com/SnowSE/final-project-KylerOlsen) @@ -58,7 +121,7 @@ features moved to the backlog include: - Type tuples, function defs - Structs, unions, etc. -## Checkpoint 1 +## SE Checkpoint 1 *07 Nov 2025* **intended user**: diff --git a/README.md b/README.md index 4342926..7247cfe 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,6 @@ # YREA SLS *Kyler Olsen* -*October 2025* -*Snow College* -*SE 3250 Survey of Languages Final Project* +*October 2025* SLS is a statically-typed, stack-based language with pure postfix notation combining the execution model of HP's RPL, the type system of C and Rust, and diff --git a/SLS_Rust/sls/state.json b/SLS_Rust/sls/state.json deleted file mode 100644 index 63ec579..0000000 --- a/SLS_Rust/sls/state.json +++ /dev/null @@ -1 +0,0 @@ -{"stack":[{"I64":10}],"functions":{"asin":{"Builtin":"asin"},"if":{"Builtin":"if"},"*":{"Builtin":"*"},"tan":{"Builtin":"tan"},"floor":{"Builtin":"floor"},"bitor":{"Builtin":"bitor"},"shl":{"Builtin":"shl"},"rot":{"TokenString":{"tokens":[{"I64":3},{"I64":1},{"Identifier":{"name":"roll","is_literal":false}}]}},"not":{"Builtin":"not"},"while":{"Builtin":"while"},"<=":{"Builtin":"<="},"pick":{"Builtin":"pick"},"ln":{"Builtin":"ln"},"shr":{"Builtin":"shr"},"round":{"Builtin":"round"},"atan":{"Builtin":"atan"},"log":{"Builtin":"log"},"swap":{"Builtin":"swap"},"dup":{"Builtin":"dup"},"or":{"Builtin":"or"},"eval":{"Builtin":"eval"},"type_of":{"Builtin":"type_of"},"rand":{"Builtin":"rand"},"/":{"Builtin":"/"},"depth":{"Builtin":"depth"},"seed":{"Builtin":"seed"},"logb":{"TokenString":{"tokens":[{"Identifier":{"name":"ln","is_literal":false}},{"Identifier":{"name":"swap","is_literal":false}},{"Identifier":{"name":"ln","is_literal":false}},{"Identifier":{"name":"swap","is_literal":false}},{"Identifier":{"name":"/","is_literal":false}}]}},"+":{"Builtin":"+"},"cos":{"Builtin":"cos"},"max":{"TokenString":{"tokens":[{"I64":1},{"Identifier":{"name":"pick","is_literal":false}},{"I64":1},{"Identifier":{"name":"pick","is_literal":false}},{"Identifier":{"name":"<","is_literal":false}},{"TokenString":{"tokens":[{"Identifier":{"name":"swap","is_literal":false}},{"Identifier":{"name":"drop","is_literal":false}}]}},{"TokenString":{"tokens":[{"Identifier":{"name":"drop","is_literal":false}}]}},{"Identifier":{"name":"if","is_literal":false}}]}},"ceil":{"Builtin":"ceil"},"-":{"Builtin":"-"},"for":{"Builtin":"for"},"and":{"Builtin":"and"},"min":{"TokenString":{"tokens":[{"I64":1},{"Identifier":{"name":"pick","is_literal":false}},{"I64":1},{"Identifier":{"name":"pick","is_literal":false}},{"Identifier":{"name":"<","is_literal":false}},{"TokenString":{"tokens":[{"Identifier":{"name":"drop","is_literal":false}}]}},{"TokenString":{"tokens":[{"Identifier":{"name":"swap","is_literal":false}},{"Identifier":{"name":"drop","is_literal":false}}]}},{"Identifier":{"name":"if","is_literal":false}}]}},"atan2":{"Builtin":"atan2"},"const":{"Builtin":"const"},"sqrt":{"Builtin":"sqrt"},">":{"Builtin":">"},"bitand":{"Builtin":"bitand"},"!=":{"Builtin":"!="},"<":{"Builtin":"<"},"acos":{"Builtin":"acos"},"%":{"Builtin":"%"},">=":{"Builtin":">="},"==":{"Builtin":"=="},"abs":{"Builtin":"abs"},"sin":{"Builtin":"sin"},"^":{"Builtin":"^"},"bitnot":{"Builtin":"bitnot"},"lambda":{"Builtin":"lambda"},"bitxor":{"Builtin":"bitxor"},"ten":{"TokenString":{"tokens":[{"I64":10}]}},"roll":{"Builtin":"roll"},"drop":{"Builtin":"drop"}}} \ No newline at end of file diff --git a/Turnin.txt b/Turnin.txt deleted file mode 100644 index 7b6f73b..0000000 --- a/Turnin.txt +++ /dev/null @@ -1,13 +0,0 @@ -Repo Link: https://github.com/SnowSE/final-project-KylerOlsen -Report Path: /REPORT.md - https://github.com/SnowSE/final-project-KylerOlsen/src/branch/master/REPORT.md -Slides Path: /slides/SLIDES.md or /slides/YREA SLS.pdf - https://github.com/SnowSE/final-project-KylerOlsen/src/branch/master/slides/SLIDES.md - https://github.com/SnowSE/final-project-KylerOlsen/src/branch/master/slides/YREA%20SLS.pdf - -Other: - Docs: https://sls.purplecello.org/ - Repo: https://git.purplecello.org/KylerOlsen/YREA-SLS - Slide Show: https://sls.purplecello.org/slides/SLIDES.html - Slides PDF: https://sls.purplecello.org/slides/YREA%20SLS.pdf -(purplecello.org, including subdomains, are offline at night starting at 9:30PM)