Commit Graph

287 Commits

Author SHA1 Message Date
Mattia Giambirtone e97653cbc7 Initial ground work on typed AST, minor fixes to compiler, switch statement now looks for equality operator instead of emitting the Equal opcode 2023-01-05 12:44:11 +01:00
Mattia Giambirtone 14f58921a5 Minor stylistic updates to CLI interface 2022-12-16 15:29:13 +01:00
Mattia Giambirtone 8cad266651 Updated help menu in config.nim 2022-12-16 15:23:32 +01:00
Mattia Giambirtone 382244f7a7 Added -o/--output option 2022-12-16 15:19:38 +01:00
Mattia Giambirtone cf6d20e757 Added mutateOuterScope to noWarn option, improved error formatting, added backend flag, updated help menu 2022-12-16 15:11:20 +01:00
Mattia Giambirtone ffe57c134a Minor improvements to modularization (moved even more procedures to generalized methods) 2022-12-16 14:32:20 +01:00
Mattia Giambirtone db021cb821 Initial ground work on the C backend 2022-12-15 16:49:27 +01:00
Mattia Giambirtone cc5622605d Updated manual 2022-12-15 16:11:15 +01:00
Mattia Giambirtone 3a48999a35 Updated manual 2022-12-15 15:52:04 +01:00
Mattia Giambirtone 42a7c4d050 Updated manual 2022-12-15 15:34:02 +01:00
Mattia Giambirtone e4f5c0dd4b Updated manual 2022-12-15 15:33:20 +01:00
Mattia Giambirtone 398af0f467 Updated manual 2022-12-15 15:32:28 +01:00
Mattia Giambirtone 19076ee4a1 Updated manual 2022-12-15 15:30:18 +01:00
Mattia Giambirtone d3220de5bf Added note about type unions in generic types 2022-12-15 15:29:18 +01:00
Mattia Giambirtone f0c4d1c152 Updated manual 2022-12-15 15:23:31 +01:00
Mattia Giambirtone 8092f28cde Fixed typos in manual 2022-12-15 15:22:51 +01:00
Mattia Giambirtone 7d08e3e83f Updated manual 2022-12-15 15:21:37 +01:00
Mattia Giambirtone 072dd1584c Updated README 2022-12-15 14:54:15 +01:00
Mattia Giambirtone 4cbea5c54d Updated README 2022-12-15 13:40:35 +01:00
Mattia Giambirtone 385701ab83 Minor change (all test suite is passing) 2022-12-15 13:32:17 +01:00
Mattia Giambirtone 76ee8c7454 Further work on compiler modularization: converted expression handlers to methods 2022-12-15 13:22:34 +01:00
Mattia Giambirtone dc393bbb34 Initial work on multi-backend support 2022-12-15 11:48:43 +01:00
Mattia Giambirtone b912d58cad Peon bytecode files can now be executed directly 2022-12-09 13:42:52 +01:00
Mattia Giambirtone f86925edba Minor improvements to warning messages 2022-12-09 13:40:02 +01:00
Mattia Giambirtone e87428b85d Improved README 2022-12-09 13:30:40 +01:00
Mattia Giambirtone 82ca5eaa0d Updated README 2022-12-07 10:55:41 +01:00
Mattia Giambirtone c4dc8dc3a2 Updated README 2022-12-07 10:52:51 +01:00
Mattia Giambirtone f1875736e3 Added switch statements 2022-12-07 09:15:29 +01:00
Mattia Giambirtone af3c7234be Added template support and related test 2022-12-06 12:55:17 +01:00
Mattia Giambirtone 405c47cd56 Updated comparisons test to always print true 2022-12-06 11:13:13 +01:00
Mattia Giambirtone 70cfb0d89c More bug fixing, added extra test 2022-12-06 10:59:05 +01:00
Mattia Giambirtone d7d561f45e Updated REPL to be more forgiving once errors occur 2022-12-05 19:56:00 +01:00
Mattia Giambirtone 01355fdaba Minor fixes and changes 2022-12-05 19:19:38 +01:00
Mattia Giambirtone 7ebd13f739 Fixed bugs in automatic types 2022-12-05 17:09:09 +01:00
Mattia Giambirtone 6caaf7e707 Added error handling for using auto in a generic constraint 2022-12-05 12:13:21 +01:00
Mattia Giambirtone 572443a988 Added support for automatic types 2022-12-05 12:06:24 +01:00
Mattia Giambirtone c0f358e956 Fixed bugs with blocks 2022-12-05 08:47:14 +01:00
Mattia Giambirtone 4b6d86ad8e Added named blocks 2022-12-05 08:07:37 +01:00
Mattia Giambirtone 15ec8dce54 Fixed error reporting in REPL 2022-12-04 17:02:32 +01:00
Mattia Giambirtone 21738b9382 Removed broken closure implementation, changed local resolution mechanism, many bug fixes to namespaces and tests 2022-12-04 16:54:28 +01:00
Mattia Giambirtone 142e575497 Fixes to function calls and attempt to fix closures inside variables 2022-12-02 13:35:54 +01:00
Mattia Giambirtone 8fb90bb0ef Many fixes to generics 2022-12-01 22:04:10 +01:00
Mattia Giambirtone 63cdda42ce Added tagged type unions, moved intrinsics to peon's stdlib and fixed issues with generics and parametric polymorphism 2022-11-29 16:48:05 +01:00
Mattia Giambirtone 382a6c141b Updated README 2022-11-28 19:04:19 +01:00
Mattia Giambirtone d9570d4393 Fixed bug with return statement and updates tests 2022-11-28 19:03:08 +01:00
Mattia Giambirtone 58b5d07dd6 Typo 2022-11-28 18:30:19 +01:00
Mattia Giambirtone 0ed67cff1b Minor update to generics2 test 2022-11-28 18:27:04 +01:00
Mattia Giambirtone 540feb0c91 Implemented ACTUAL parametric polymorphism 2022-11-28 18:21:38 +01:00
Mattia Giambirtone 62b8bae0fc Generics are now compiled only once 2022-11-28 16:47:38 +01:00
Mattia Giambirtone 2187aa19d8 Minor fixes and changes, renamed nodump option to noDump, added missing support for mode flag. Minor additions and style fixes to parser and compiler 2022-11-28 14:04:12 +01:00