greg
|
5f1c46cb87
|
Fix type check macro to add symbol table
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
0ea9bd3d95
|
More work with unification
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
0cf56eea4f
|
the evar table
TODO find a better way to represent this
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
ab53c5394e
|
Unify work
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
f6c85951fe
|
Move type-level func up
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
c530715671
|
Okay I am figuring things out about hindley-milner again
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
617a30b967
|
rename type_var to ty
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
cd11d18385
|
String and () types
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
f82c6199c0
|
Change around some stuff
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
f75cd763f8
|
Change Variable to Value
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
54c16f0190
|
Partial handling of user defined types
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
8d8e3cd565
|
Starting to make unify actually work
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
47975cf8f6
|
Convert unify to are types
b/c Type implements Clone
Maybe wanna kill this later for efficiency
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
ddd861fbea
|
Have + do something different with strings
Needed to introduce polymorphism soon
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
200d0f9867
|
Operator typing a little bit
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
3e44bd3a18
|
Slight refactoring
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
e2a94280c2
|
Renamed all the type-related types
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
c5b3bafe43
|
Move some type checking code around
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
b417451536
|
Basic typing test
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
a0faed3603
|
String types
|
2018-07-26 00:52:45 -07:00 |
|
greg
|
83752a1c74
|
Some more type work
|
2017-10-10 01:04:19 -07:00 |
|
greg
|
66c7bbeb07
|
Floats, pathspec changes
|
2017-10-09 04:02:50 -07:00 |
|
greg
|
ed8359bcd7
|
Store constant state, func/binding as value
on symbol table, instead of key
|
2017-10-09 02:38:33 -07:00 |
|
greg
|
996f75e15c
|
A lot more type work
|
2017-10-09 02:26:59 -07:00 |
|
greg
|
30a54d997c
|
Simplify symbol table code
|
2017-10-09 00:59:52 -07:00 |
|
greg
|
4bcbf1854a
|
Use universal/existential type data structures
|
2017-10-09 00:36:54 -07:00 |
|
greg
|
f2c6556c2a
|
Use name TypeVariable
|
2017-10-09 00:22:42 -07:00 |
|
greg
|
9161e2751f
|
(Janky) type inference for explicitly-type-annotated values
|
2017-10-08 23:45:38 -07:00 |
|
greg
|
60fc9fd7e1
|
Super-basic type inference working
with a bunch of assumptions and hard-coded values
|
2017-10-08 23:33:53 -07:00 |
|
greg
|
3b249045aa
|
Call needs to accept a general argument
|
2017-10-08 23:02:03 -07:00 |
|
greg
|
ff0e14d9a9
|
Rename params -> args in Call Expr
|
2017-10-08 22:52:05 -07:00 |
|
greg
|
8fe535597e
|
Starting to actually do Hindley-Milner!!
|
2017-10-08 22:48:10 -07:00 |
|
greg
|
4bb8f82579
|
Make AST output red
|
2017-10-08 22:17:29 -07:00 |
|
greg
|
5cb8423ecc
|
Beginning for expressions
|
2017-10-08 22:07:18 -07:00 |
|
greg
|
4032707dc9
|
Kill some comments
|
2017-10-08 21:26:47 -07:00 |
|
greg
|
1a8423535a
|
Add test for function decl
|
2017-10-08 21:25:51 -07:00 |
|
greg
|
338981febe
|
Changed function signatures around slightly
|
2017-10-08 21:21:02 -07:00 |
|
greg
|
6dff8b029e
|
Function definitions expanded
|
2017-10-08 20:55:05 -07:00 |
|
greg
|
df877830d3
|
Fixed tests
|
2017-10-08 19:39:41 -07:00 |
|
greg
|
40696b3cbd
|
Rename TypeAnno to TypeName everywhere
|
2017-10-08 19:30:52 -07:00 |
|
greg
|
40a82d7e25
|
Tests for new type stuff
+ some renaming
|
2017-10-08 19:15:08 -07:00 |
|
greg
|
c605f76059
|
More type work II
|
2017-10-08 19:03:02 -07:00 |
|
greg
|
a6d71821b9
|
More type work I
|
2017-10-08 18:47:57 -07:00 |
|
greg
|
c4f0331d1a
|
Symbol table addition should be separate stage
|
2017-10-08 16:24:44 -07:00 |
|
greg
|
b4054d7581
|
Impl blocks
|
2017-10-08 14:24:02 -07:00 |
|
greg
|
74d3828c71
|
Symbol table debug needs to happen before type check
|
2017-10-08 13:59:55 -07:00 |
|
greg
|
bb57da564d
|
Infrastructure to debug symbol table
|
2017-10-08 13:57:43 -07:00 |
|
greg
|
3f9ae5fac3
|
Symbol table accepts variables
|
2017-10-08 13:51:56 -07:00 |
|
greg
|
62edc7c996
|
type checking / symbol table stuff
|
2017-10-08 12:22:04 -07:00 |
|
greg
|
e412fb9a89
|
Convert type-checking function type
|
2017-10-07 22:08:48 -07:00 |
|