Nathan Braswell
|
66f82062ba
|
Almost have scoped . working, in fact it is, but having objects with member names has problems (like o.o) if the member function is in scope. (it thinks maybe you're trying to call o on itself...)
|
2018-12-18 02:51:44 -05:00 |
|
Nathan Braswell
|
3f2d51ba75
|
Fixed type unification for templates! Next up is adding to the scope for .
|
2018-12-07 01:08:12 -05:00 |
|
Nathan Braswell
|
0153054a4c
|
work on k
|
2018-12-05 23:43:24 -05:00 |
|
Nathan Braswell
|
8177bc7fd0
|
Add struct access! Uses new translation_unit_generative pass depended on by scope lookups to generate compiler_intrinsics that access members of structs'
|
2018-10-27 18:00:26 -04:00 |
|
Nathan Braswell
|
194842397f
|
address of and dereference implemented as templated compiler intrinsics
|
2018-10-16 19:12:10 -04:00 |
|
Nathan Braswell
|
c0a6b614d0
|
Fix pointer/ref parsing
|
2018-10-10 01:13:47 -04:00 |
|
Nathan Braswell
|
379d9f612e
|
Template functions (instantiated implicitly) work!
|
2018-10-09 23:00:57 -04:00 |
|
Nathan Braswell
|
39ecf24e69
|
Can't finish template inst tonight.
|
2018-10-08 00:28:42 -04:00 |
|
Nathan Braswell
|
fb179cfcf7
|
Added primitive math ops, and realized when chaining them that overload resolution had to happen for different functions at different times (esp now that we don't just go outside in). Added a iterative resolver to solve the overloads, which iterates over each one and binds the one that only has one option and unifing types based on that, then running through them all again. If progress is not made for a whole iteration, it errors out and shows the first ambigious call. It could show all ambigious calls...
|
2018-10-01 01:19:51 -04:00 |
|
Nathan Braswell
|
4dcf102cb0
|
Also regular overloading works now, by counting remaining unknowns as equal during overload filtering time (so that function calls as statements, which get an inferenced return type of _unknown can match a function with any return type
|
2018-09-24 00:21:39 -04:00 |
|
Nathan Braswell
|
2148577523
|
HM-style return type overloaded function infrencing works!
|
2018-09-24 00:09:30 -04:00 |
|
Nathan Braswell
|
0505a0e7d6
|
Move types into binding also
|
2018-09-22 14:54:52 -04:00 |
|
Nathan Braswell
|
1cae1b1504
|
parse types into initial ast
|
2018-06-22 23:13:08 -04:00 |
|
Nathan Braswell
|
e851d0eac5
|
Add basis for types in k, and move to new poset setup (depend on individual imports, functions, types, and global variables)
|
2018-06-22 20:58:47 -04:00 |
|