100 Commits
Author SHA1 Message Date
sashakoshka 1f19292366 Update README.md
This project is frozen for now so it doesn't make sense to have dates for the roadmap.
2024-10-12 13:49:04 -06:00
sashakoshka 018dc31d04 Update FSPL parser readme 2024-04-03 11:04:14 -04:00
sashakoshka 767e7bd33c Fix analyzer tests that used "switch" as function name 2024-04-02 02:59:49 -04:00
sashakoshka 6c41e71ade Analyzer tests for reserved idents 2024-04-02 02:59:42 -04:00
sashakoshka 423f3ba22f Add function in parser for checking if a word is reserved 2024-04-02 02:59:11 -04:00
sashakoshka 08eedaf74d Merge pull request 'os-native-filepaths' (#75) from os-native-filepaths into main
Reviewed-on: #75
2024-03-31 05:34:22 +00:00
sashakoshka 88e10158ae It is now possible for tests to pass on windows 2024-03-31 01:33:28 -04:00
sashakoshka 93d4aea1b1 Compiler tests properly add extension to obj files 2024-03-31 01:33:28 -04:00
sashakoshka 810175b6c9 Object files have platform specific extensions 2024-03-31 01:33:28 -04:00
sashakoshka b6b0a1e592 parent 00110039e2
author Sasha Koshka <sashakoshka@tebibyte.media> 1711851967 -0400
committer Sasha Koshka <sashakoshka@tebibyte.media> 1711862974 -0400

Compiler tests now run on Windows

Compiler tests show linker log

Compiler tests show linker log
2024-03-31 01:33:08 -04:00
sashakoshka 00110039e2 Compiler defaults to .o when output name isn't specified 2024-03-28 18:16:58 -04:00
sashakoshka 15e418d8c1 Add custom fs implementation 2024-03-28 18:12:37 -04:00
sashakoshka 1c61235b63 openAbsolute should strip out the volume name on Windows 2024-03-28 17:16:50 -04:00
sashakoshka 4e6103418c Compiler normalizes paths before passing them to an fs 2024-03-28 16:52:31 -04:00
sashakoshka e805060370 Generator native uses GOARCH and GOOS instead of cond. compilation 2024-03-28 16:02:56 -04:00
sashakoshka eccb2e9a5b Compiler uses runtime.GOOS instead of conditional compilation 2024-03-28 13:11:27 -04:00
sashakoshka e574b248e5 Total windows path separator death 2024-03-27 13:39:38 -04:00
sashakoshka 43ed297a12 Add Windows paths to design/units.md 2024-03-27 13:38:13 -04:00
sashakoshka 76615df4d4 Add option to specify module search paths manually 2024-03-27 13:13:22 -04:00
sashakoshka 2caed5b4ae Add an executable filetype 2024-03-27 12:52:20 -04:00
sashakoshka cd396952f2 Certain filename extentions depend on target os 2024-03-27 12:40:45 -04:00
sashakoshka 0404202691 Compiler takes in a target 2024-03-27 12:10:19 -04:00
sashakoshka 92ad52b2aa Add OS field to Target 2024-03-27 12:05:30 -04:00
sashakoshka 10246f7268 Add untested windows native paths 2024-03-27 11:24:26 -04:00
sashakoshka 2edda8a960 Add stub for Windows native parameters 2024-03-26 13:15:56 -04:00
sashakoshka 11e7a83eb4 Add native paths for unix 2024-03-26 13:15:03 -04:00
sashakoshka 9b45bc56d4 Resolver is now used behind a pointer 2024-03-26 13:12:38 -04:00
sashakoshka b9e0b3265e fsplc and fsplmod use rooted paths to identify things
Remedies #71
2024-03-26 02:07:27 -04:00
sashakoshka 48fa712cb7 Update fsplc/doc.go usage 2024-03-26 02:07:04 -04:00
sashakoshka cad6a0759a Compiler now uses LLVM-like output filetype names
Remedies #40
2024-03-26 01:53:10 -04:00
sashakoshka 6c7fcf6045 Add compiler test for puts libc function 2024-03-26 01:18:39 -04:00
sashakoshka eb2c1c8aed Fixed error message for types in match exprs not being unions 2024-03-26 01:12:47 -04:00
sashakoshka 78ea6e45b2 Update roadmap 2024-03-26 01:01:02 -04:00
sashakoshka ebafbc2a38 Merge pull request 'implement-switch-expressions' (#70) from implement-switch-expressions into main
Reviewed-on: #70
2024-03-26 04:55:45 +00:00
sashakoshka 650289f03e Generate switch statements 2024-03-26 00:42:27 -04:00
sashakoshka 5dda7b2186 Generate match statement default cases 2024-03-25 22:34:24 -04:00
sashakoshka 4931f97496 Switch statement analysis passes tests 2024-03-25 19:50:54 -04:00
sashakoshka f3bdfef5c5 Add analyzer tests to switch statements 2024-03-25 19:49:48 -04:00
sashakoshka a50a5febb9 Untested analysis of switch statements 2024-03-25 12:08:28 -04:00
sashakoshka 6916b3b7b1 Analyze match expression default cases 2024-03-25 11:29:24 -04:00
sashakoshka d8f82d3646 Parse switch expressions 2024-03-25 02:18:18 -04:00
sashakoshka e27fb9e79b Parse default match cases 2024-03-25 01:53:40 -04:00
sashakoshka 1f04c3a593 Added switch statements, default cases to entity 2024-03-25 01:16:41 -04:00
sashakoshka 7e05785c09 Added switch statements to spec 2024-03-25 00:46:30 -04:00
sashakoshka dcad5a2d18 Update roadmap 2024-03-25 00:36:04 +00:00
sashakoshka 3cd3384006 Remove the star from array literals 2024-03-24 20:31:25 -04:00
sashakoshka 7f58f7da8b Change the compiler test names to make them more legible 2024-03-24 20:09:10 -04:00
sashakoshka 4342c15e38 Merge pull request 'implement-range-loops' (#68) from implement-range-loops into main
Reviewed-on: #68
2024-03-25 00:03:53 +00:00
sashakoshka 18e7850b58 Update generator tests 2024-03-24 20:02:57 -04:00
sashakoshka 70c58f74de Fix assignment from array to slice 2024-03-24 19:57:24 -04:00
sashakoshka 185ef7f6f9 For loops loop back around to the loop header 2024-03-24 03:35:04 -04:00
sashakoshka f3c0901493 For loop elements are properly copied 2024-03-24 03:09:33 -04:00
sashakoshka f84ddf8cad What? 2024-03-20 13:29:26 -04:00
sashakoshka cd08801a29 Added a timeout for compiler tests 2024-03-20 12:38:46 -04:00
sashakoshka 84e21b3832 Update generator test cases 2024-03-20 11:54:49 -04:00
sashakoshka 648b1df547 Generator generates valid gep index for for loop indexing 2024-03-20 11:51:44 -04:00
sashakoshka a4443444c1 Add compiler test cases for loops 2024-03-20 11:35:14 -04:00
sashakoshka a647f27e8c Fix test cases 2024-03-20 11:19:24 -04:00
sashakoshka ecd6eba434 Loops now handle multiple break statements correctly 2024-03-20 04:19:47 -04:00
sashakoshka 50f088842a For loop generation should be more correct now 2024-03-20 02:55:31 -04:00
sashakoshka 491a9b2369 Untested for loop generation 2024-03-20 02:52:01 -04:00
sashakoshka a9adc77658 For loop generation stub 2024-03-20 02:09:26 -04:00
sashakoshka 16686bfa3d Update README.md 2024-03-19 19:15:18 +00:00
sashakoshka 7cf770df7f Update usage instructions 2024-03-19 19:13:07 +00:00
sashakoshka 909d463637 Update roadmap part one bazillion 2024-03-19 18:42:33 +00:00
sashakoshka 9b1f6d695c Oh come on 2024-03-19 18:39:52 +00:00
sashakoshka 838c34b0a1 Update roadmap again 2024-03-19 18:39:29 +00:00
sashakoshka 7d74e59e64 Update roadmap 2024-03-19 18:30:05 +00:00
sashakoshka c0476f14ae Analyze for loops 2024-03-16 13:25:53 -04:00
sashakoshka bb1886ab9c Add tests for for loop analysis 2024-03-16 13:23:35 -04:00
sashakoshka 197373ee27 Add breakable interface 2024-03-16 01:43:56 -04:00
sashakoshka c576c4022e Add for parsing 2024-03-15 03:03:59 -04:00
sashakoshka 67a8b67dec Add for parsing to parser test 2024-03-15 03:03:39 -04:00
sashakoshka 8d69e4cdd3 Fix For.String() 2024-03-15 03:02:50 -04:00
sashakoshka ec873ea895 Index and Element must be declarations 2024-03-15 02:50:28 -04:00
sashakoshka 45ab5d95a2 Add range loops to entity 2024-03-14 22:28:50 -04:00
sashakoshka bb2caeb88a Add range loops to spec 2024-03-14 22:28:35 -04:00
sashakoshka b07dbf8eba Merge pull request 'entity-consistency' (#57) from entity-consistency into main
Reviewed-on: #57
2024-03-14 07:21:34 +00:00
sashakoshka babcce643f Update compiler 2024-03-14 03:20:55 -04:00
sashakoshka 6be48aea28 Update generator 2024-03-14 03:20:47 -04:00
sashakoshka f58c01be52 Updated analyzer 2024-03-14 03:18:46 -04:00
sashakoshka 4df7a8905e Updated parser 2024-03-14 03:14:08 -04:00
sashakoshka 2be41be609 Add the cool epic to meta 2024-03-14 02:43:59 -04:00
sashakoshka 0a56a61f4f Only top level entities are in toplevel.go 2024-03-14 02:41:51 -04:00
sashakoshka fc2fb42e53 Misc entities now have Pos/Position thing going on 2024-03-14 02:40:13 -04:00
sashakoshka 9335841fc0 Clean up wording in type interface documentation 2024-03-14 02:37:58 -04:00
sashakoshka e35a576022 Add more behaviors to expression interface 2024-03-14 02:37:12 -04:00
sashakoshka 1c9700378c Moved key/hash stuff into its own file 2024-03-14 02:36:39 -04:00
sashakoshka 56b91d788f Add more methods to toplevel entities 2024-03-14 02:23:26 -04:00
sashakoshka fc6efafc34 Add access control modes to spec 2024-03-14 02:11:26 -04:00
sashakoshka a147143fc3 Missed a spot 2024-03-14 01:55:18 -04:00
sashakoshka a8fd79991c Renamed restricted access to opaque access 2024-03-14 01:54:22 -04:00
sashakoshka a9c85bf017 Changed restricted access specified from ~ to # 2024-03-14 01:42:19 -04:00
sashakoshka db98e590fc Change interface symbol from ~ to & 2024-03-13 23:05:58 -04:00
sashakoshka e0d4be8db8 Removed "in" from match statement 2024-03-13 22:44:11 -04:00
sashakoshka 0ea05e5836 Fix calling methods on pointers to types in other units 2024-03-13 11:51:51 -04:00
sashakoshka d2c8fdd05c Add generator tests for referring to methods in other units 2024-03-13 11:15:15 -04:00
sashakoshka 1565376418 Add TestMethodPtr to generator 2024-03-11 11:50:12 -04:00
sashakoshka 566bf41843 Re-format roadmap 2024-03-07 23:20:06 +00:00
sashakoshka 45f46b04b0 Merge pull request 'assign-return-break-to-anything' (#56) from assign-return-break-to-anything into main
Reviewed-on: #56
2024-03-06 22:42:18 +00:00