Commit Graph

742 Commits

Author SHA1 Message Date
greg
1d9d0c4395 Okay this compiles
The secret (from #rust) appeared to be that Fn() needed to have + Send
explicitly annotated on it
2018-07-26 00:52:45 -07:00
greg
ffb87ebb82 Working on solution to Rocket state problem 2018-07-26 00:52:45 -07:00
greg
30c741f459 Some linker bullshit
I don't know why I needed to do this
2018-07-26 00:52:45 -07:00
greg
d19541b3e1 Splitting up some code
In preparation for splitting schala into crates
2018-07-26 00:52:45 -07:00
greg
3651461bbc Some more structure in evaluator 2018-07-26 00:52:45 -07:00
greg
7730457878 Revert "Starting to split project into multiple crates"
This reverts commit e3b0f4a51e.
Bah, this was a bad idea, wrong way to do it
2018-07-26 00:52:45 -07:00
greg
46dbac7f69 Starting to split project into multiple crates 2018-07-26 00:52:45 -07:00
greg
f68167f3a2 Halfway done with evaluating tuples 2018-07-26 00:52:45 -07:00
greg
c9625ffa77 Add module keyword 2018-07-26 00:52:45 -07:00
greg
cc3833754d Switch from request to superagent
For doing HTTP requests. Makes the js bundle a lot smaller.

Also I should do something about the fact that I now have to change the
js and also rebuild the rust binary to change code
2018-07-26 00:52:45 -07:00
greg
9afbd2305f Literal non-primitive values 2018-07-26 00:52:45 -07:00
greg
d7564f81c9 Starting work on literal non-primitve values 2018-07-26 00:52:45 -07:00
greg
2fbb8f2b2f Can eval custom data constructors now 2018-07-26 00:52:45 -07:00
greg
1884eae191 Float literals, kill old code 2018-07-26 00:52:45 -07:00
greg
bb880d44fa Some more primitive types + binop-checking 2018-07-26 00:52:45 -07:00
greg
22b4738726 Add required imports 2018-07-26 00:52:45 -07:00
greg
0202aab181 Some partial work on refactoring type infer fn 2018-07-26 00:52:45 -07:00
greg
f9c9ed6b29 Add colored output to non-interactive 2018-07-26 00:52:45 -07:00
greg
04cb1616f7 Convert webapp to using included files 2018-07-26 00:52:45 -07:00
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