Commit Graph

24 Commits

Author SHA1 Message Date
Kayne Ruse
596a4882bc Fixed a print bug with casting 2022-08-19 19:53:55 +01:00
Kayne Ruse
4f0aebc32f Type casting is working: 2022-08-19 19:24:07 +01:00
Kayne Ruse
16291bd1af Declare variables with a type but no value allowed 2022-08-19 17:52:24 +01:00
Kayne Ruse
574a864dd0 Reworked the type system, types now have a single value 2022-08-17 17:39:33 +01:00
Kayne Ruse
7e01ead6ff Fixed some issues in scope 2022-08-15 10:15:24 +01:00
Kayne Ruse
6b834ca6d1 Type checking in place 2022-08-15 03:52:44 +01:00
Kayne Ruse
8d12db7dbe Some declaration guards 2022-08-15 03:12:10 +01:00
Kayne Ruse
4aa6f75ea7 Expression statements and assignemnts are working 2022-08-14 19:57:24 +01:00
Kayne Ruse
e9ab6f3f96 Variables now persist between statements 2022-08-13 21:27:39 +01:00
Kayne Ruse
3098d75d01 Caught some loose memory 2022-08-13 16:26:51 +01:00
Kayne Ruse
afad0d99cb I think var declarations are working correctly; no type checking yet 2022-08-13 15:57:30 +01:00
Kayne Ruse
55aa6eb273 The value is displaying correctly, but not the type 2022-08-12 17:27:57 +01:00
Kayne Ruse
80b64cf21e Fixed division by zero bugs 2022-08-12 07:26:58 +01:00
Kayne Ruse
00812e7a73 pre-computed identifer hashes 2022-08-11 18:36:03 +01:00
Kayne Ruse
67f7b3e436 Arrays and dictionaries have been implemented, read more
The arrays and dictionaries are currently being printed out correctly,
afaik. This means I should be able to go back and work on the type
system, assuming nothing happens.
2022-08-10 17:42:04 +01:00
Kayne Ruse
9603baeb0a Added console colors, tweaked help menu 2022-08-09 13:51:03 +01:00
Kayne Ruse
6d5549fc8e Added scopes using '{}' symbols, read more
I've also added a new literal type called 'identifier'. This will be
used for variable names, and has a type mask embedded in it.
2022-08-08 15:02:12 +01:00
Kayne Ruse
08ce270e06 Minor tweak to header loading 2022-08-08 10:35:41 +01:00
Kayne Ruse
ceeca9d40f Fiddling with -Wpedantic 2022-08-07 21:39:21 +01:00
Kayne Ruse
9a415738d9 Implemented groupings 2022-08-07 15:04:19 +01:00
Kayne Ruse
d7fda480fd Added assert keyword, with re-routable print and assert outputs 2022-08-07 12:26:04 +01:00
Kayne Ruse
a05b93975e Basic arithmetic works 2022-08-06 14:50:22 +01:00
Kayne Ruse
c178824a0a Forgot a function call 2022-08-06 08:22:09 +01:00
Kayne Ruse
7a3986af33 Wrote the interpreter 2022-08-06 07:58:32 +01:00