Ginger Bill
|
1c5ddd65b4
|
Rudimentary support for parametric polymorphic types
|
2017-07-13 22:35:00 +01:00 |
|
Ginger Bill
|
b8697fb4ed
|
Change precedence order for types e.g. ^T(x) == ^(T(x))
|
2017-07-13 16:20:07 +01:00 |
|
Ginger Bill
|
ba5050ac7c
|
Compiler Internal Changes: TypeRecord_Union -> Type_Union
|
2017-07-10 22:59:23 +01:00 |
|
Ginger Bill
|
d936ca1ea0
|
Compiler internal change: TypeRecord_Enum -> Type_Enum
|
2017-07-10 22:42:58 +01:00 |
|
Ginger Bill
|
773cf5ca08
|
Add -show-timings; Clean up polymorphic procedure code a bit
|
2017-07-07 15:26:49 +01:00 |
|
Ginger Bill
|
2db03cb4a5
|
Fix aprint* bug; NULL -> nullptr; Better error messages for overloaded functions
|
2017-07-06 22:43:55 +01:00 |
|
Ginger Bill
|
bc16b290ba
|
Disable polymorphic overloading in the global scope
TODO: Figure out why it does not work in the global scope
|
2017-07-02 22:08:39 +01:00 |
|
Ginger Bill
|
e4a8283327
|
Remove Type
What was I thinking?!
|
2017-06-29 15:48:07 +01:00 |
|
Ginger Bill
|
001baf4419
|
Add Type -- Runtime type for comparing types (similar to TypeInfo but simpler)
|
2017-06-29 15:13:41 +01:00 |
|
Ginger Bill
|
d167290b28
|
Make AstNodeIdent a struct wrapping its Token
|
2017-06-29 12:11:50 +01:00 |
|
Ginger Bill
|
cc7316bb35
|
Fix IR printing for para-poly procedures
|
2017-06-26 14:16:16 +01:00 |
|
Ginger Bill
|
c642e326ce
|
Undef value --- (for setting a value to be uninitialized/undefined)
|
2017-06-26 11:57:26 +01:00 |
|
Ginger Bill
|
1ced92be47
|
Rudimentary para-poly procedures
|
2017-06-25 22:15:30 +01:00 |
|
Ginger Bill
|
15dbea6899
|
Generic procedures generate types on use
|
2017-06-25 19:41:07 +01:00 |
|
Ginger Bill
|
53075e2570
|
Update old demos
|
2017-06-21 21:20:26 +01:00 |
|
Ginger Bill
|
5957d7f7be
|
Implicit Parameter Passing based context system (replacing Thread Local Storage (TLS) approach)
|
2017-06-20 12:38:05 +01:00 |
|
Ginger Bill
|
35c102137f
|
Compiler compiles for x86 (doesn't work properly)
|
2017-06-19 18:49:11 +01:00 |
|
Ginger Bill
|
c3b510c2d9
|
C-style c_varargs (Not heavily tested)
|
2017-06-13 21:00:42 +01:00 |
|
Ginger Bill
|
5cad7d44a6
|
Use templated Map for extra type safety
|
2017-06-08 13:26:48 +01:00 |
|
Ginger Bill
|
2b96be0ae8
|
Remove unnecessary typedef usage
|
2017-06-08 13:08:39 +01:00 |
|
Ginger Bill
|
2a89d8021c
|
Use templated Array with bounds checking
|
2017-06-08 12:54:52 +01:00 |
|
Ginger Bill
|
13deb4706c
|
Update String to use overloading
|
2017-06-08 12:37:07 +01:00 |
|
Ginger Bill
|
9b61adb97d
|
Build as C++
|
2017-06-08 12:03:40 +01:00 |
|