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
|
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
|
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 |
Mattia Giambirtone
|
582d29d149
|
Fixed issues with shadowing and cross-shadowing
|
2022-11-27 14:33:45 +01:00 |
Mattia Giambirtone
|
7ab757074f
|
Added attribute resolution, fixed closures, fixed cross-shadowing issues
|
2022-11-27 13:39:41 +01:00 |
Mattia Giambirtone
|
b99be47556
|
Added compilation mode flag
|
2022-11-23 10:40:45 +01:00 |
Mattia Giambirtone
|
ab30d0d891
|
Assignment now checks the type of the operand against the assignee
|
2022-11-23 09:43:22 +01:00 |
Mattia Giambirtone
|
9567319c40
|
Major error formatting refactoring. Improved warning system
|
2022-11-23 01:02:35 +01:00 |
Mattia Giambirtone
|
43d67562f1
|
Added more warnings
|
2022-11-22 15:27:32 +01:00 |
Mattia Giambirtone
|
a3b4fd1048
|
Initial warning support
|
2022-11-22 15:13:42 +01:00 |
Mattia Giambirtone
|
b93ac201f2
|
Fixed all bugs: test suite is passing
|
2022-11-05 14:27:57 +01:00 |
Mattia Giambirtone
|
ce136a7a3c
|
Implemented forward declarations
|
2022-11-05 14:03:49 +01:00 |
Mattia Giambirtone
|
3dead5a555
|
Fixed various bugs and added more tests. Also added nim.cfg
|
2022-11-05 10:57:45 +01:00 |
Mattia Giambirtone
|
e09db61bc6
|
Fixed support for type declarations in the parser
|
2022-11-04 14:56:42 +01:00 |
Mattia Giambirtone
|
31a995b0d8
|
Switched from TableRef to array for OperatorTable
|
2022-11-03 13:04:01 +01:00 |
Mattia Giambirtone
|
159530072b
|
Minor fix to getStackPos. Git commit hash is now auto filled in config.nim
|
2022-11-03 12:30:25 +01:00 |
Mattia Giambirtone
|
5e1c16bb39
|
Renamed lookupPaths to moduleLookupPaths
|
2022-11-03 11:01:28 +01:00 |
Mattia Giambirtone
|
55a112a1ab
|
Attempts at fixing GC issues
|
2022-11-03 10:55:27 +01:00 |
Mattia Giambirtone
|
c1deebf43b
|
Stopped using ref objects and removed recursive dependency between gc and VM
|
2022-11-02 13:16:43 +01:00 |
Mattia Giambirtone
|
e046981f4b
|
Fix for closures
|
2022-11-02 12:03:14 +01:00 |
Mattia Giambirtone
|
b903005504
|
Initial work on fixing calling functions assigned to variables
|
2022-10-25 11:17:38 +02:00 |
Mattia Giambirtone
|
dc626a90d9
|
Improved VM debugger, fixed bugs with fixing CFI offsets, minor docs and code changes
|
2022-10-24 13:53:27 +02:00 |
Mattia Giambirtone
|
6c305d6382
|
Disabled the GC in the entire VM module and updated config.nim
|
2022-10-21 19:50:07 +02:00 |
Mattia Giambirtone
|
9573769868
|
Various fixes to module system
|
2022-10-21 16:10:00 +02:00 |
Mattia Giambirtone
|
1c54243d43
|
Various bug fixes to scopes
|
2022-10-17 12:03:27 +02:00 |
Mattia Giambirtone
|
d33a597f19
|
Massive improvements to import system (added export statement, initial work on namespaces, module names can now be paths, added module search paths)
|
2022-10-17 11:28:00 +02:00 |
Mattia Giambirtone
|
c7893fb14b
|
Fixed issues with negative numbers and infinity. Variables can now accept function expressions as type arguments. Compiler.infer() now always returns a concrete type, minor bug fix in varDecl
|
2022-10-13 18:34:11 +02:00 |
Mattia Giambirtone
|
8667cbdceb
|
Initial ground work on generics, some stuff is broken :(
|
2022-10-13 16:52:37 +02:00 |
Mattia Giambirtone
|
d4d1034cef
|
Return addresses are now 64 bits long, return statements now compile to jumps, initial (broken) work on generics
|
2022-10-13 13:12:24 +02:00 |
Mattia Giambirtone
|
807b48bac9
|
Renamed compareTypes to compare
|
2022-10-11 10:01:01 +02:00 |
Mattia Giambirtone
|
c168d1584b
|
Updated compiler error messages and Generic type object, minor name changes
|
2022-10-11 09:59:27 +02:00 |
Mattia Giambirtone
|
9ef80535f3
|
Minor fixes to operator system and updated compiler error messages
|
2022-10-11 09:52:49 +02:00 |
Mattia Giambirtone
|
3e6e9da475
|
Fixed a bug where regular functions were mistaken for closures
|
2022-10-08 15:48:26 +02:00 |
Mattia Giambirtone
|
11c8c0a5ab
|
Definitive fix for closures
|
2022-10-08 09:18:35 +02:00 |
Mattia Giambirtone
|
e759e6cbb2
|
Various fixes to closures. Fixed chained calls and local scopes
|
2022-10-07 15:55:41 +02:00 |
Mattia Giambirtone
|
a4bccba6cd
|
Various fixes to closures and function objects
|
2022-10-06 09:57:19 +02:00 |
Mattia Giambirtone
|
9c878e5b9e
|
Fix some stuff?
|
2022-10-06 00:21:25 +02:00 |
Mattia Giambirtone
|
c230142378
|
Broken work with closures and chained calls
|
2022-08-30 12:55:14 +02:00 |
Mattia Giambirtone
|
85de75a50a
|
It is now possible to close over function arguments
|
2022-08-19 12:16:40 +02:00 |
Mattia Giambirtone
|
885d6e3ea8
|
Fixed a bug in the type system with consecutive calls
|
2022-08-19 09:08:49 +02:00 |
Mattia Giambirtone
|
058b021493
|
Fixed some bugs with void functions in the compiler
|
2022-08-18 23:49:20 +02:00 |
Mattia Giambirtone
|
8e53b19233
|
Various parser adjustments and compiler fixes
|
2022-08-18 22:07:46 +02:00 |
Mattia Giambirtone
|
4fdd90614a
|
Various fixes to the GC, added a few more tests
|
2022-08-18 19:18:29 +02:00 |
Mattia Giambirtone
|
77fd5931fa
|
Further clean up
|
2022-08-17 19:31:27 +02:00 |
Mattia Giambirtone
|
f7733d925f
|
Cleaned up and renamed some things
|
2022-08-17 19:23:11 +02:00 |