Commit Graph

94 Commits

Author SHA1 Message Date
a1d679a59d No longer destroy the list of free variables.
It so happens that this list will tell us which variables
need to be captured.
2020-05-30 23:29:36 -07:00
4586bd0188 Check for free variables in the environment before generalizing. 2020-05-30 16:40:27 -07:00
a97b50f497 Add parsing of let/in. 2020-05-28 14:44:12 -07:00
c84ff11d0d Add typechecking to let/in expressions. 2020-05-26 00:52:54 -07:00
e966e74487 Extract ordering functionality into definition group. 2020-05-25 23:58:56 -07:00
3865abfb4d Add a struct to contain groups of mutually recursive definitions. 2020-05-25 22:11:45 -07:00
1905601aaa Fork off the 12th version of the compiler. 2020-05-25 21:20:41 -07:00
18339d7e4d Build and test version 11 of the compiler instead of 10.
Some checks failed
continuous-integration/drone/push Build is failing
2020-04-26 21:28:34 -07:00
78563448fb Update to LLVM 10.
Some checks failed
continuous-integration/drone/push Build is failing
2020-04-26 21:24:24 -07:00
c1f0104edb Add missing arity checks to compiler series
Some checks failed
continuous-integration/drone/push Build is failing
2020-04-14 19:21:33 -07:00
1f00b6a3f8 Make compiler check for arity in part 11 of compiler series.
Some checks failed
continuous-integration/drone/push Build is failing
2020-04-14 16:20:12 -07:00
acb22c4119 Finish draft of part 11 of compiler series 2020-04-14 16:19:54 -07:00
be2b855ffe Rename inaccurately named rule 2020-04-14 15:58:25 -07:00
88c9418350 Update example to include polymorphism 2020-04-14 15:58:13 -07:00
b4c91d2dd4 Adjust grammar to allow for broader range of type inputs. 2020-04-13 23:17:34 -07:00
98c1b5a3b2 Make substitution replace types at every lookup step 2020-04-13 17:59:57 -07:00
122a1d73d3 Integrate new types into the rest of the project 2020-04-13 17:12:43 -07:00
74e6dba914 Add parsed type data structure, type application and arity. 2020-04-13 17:08:03 -07:00
d7846e0b32 Fork off code for part 11 of compiler series.
Some checks failed
continuous-integration/drone/push Build is failing
2020-04-09 23:48:53 -07:00
8c1168d818 Add seemingly missing string includes. 2020-04-09 16:26:10 -07:00
5cccb97ede Add missing source file
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-25 03:36:17 -07:00
493419f324 Remove debug output
Some checks failed
continuous-integration/drone/push Build is failing
2020-03-25 03:35:30 -07:00
577e0ad930 Finalize draft of polymorphism post
Some checks failed
continuous-integration/drone/push Build is failing
2020-03-25 03:22:21 -07:00
2a12f7f31e Switch to using type schemes and implement polymorphism in compiler series 2020-03-24 23:04:51 -07:00
ae3e661d7a Implement new ordered typing in compiler series 2020-03-24 22:00:11 -07:00
0efa05142f Separate definitions in compiler series 2020-03-24 21:08:06 -07:00
6714e18e7c Switch type environment to using pointers 2020-03-24 18:04:01 -07:00
5d53678e83 Only store type in case expression
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-24 17:53:06 -07:00
e3834ed6ea Explain graph code
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-14 21:04:13 -07:00
1bdb4a650e Start work on algorithms in compiler post 10
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-14 17:18:06 -07:00
6966973497 Set up script to test latest compiler version
All checks were successful
continuous-integration/drone/push Build is passing
2020-03-10 22:26:02 -07:00
8ee016e189 Fork into version 10 of the compiler for blog series 2020-03-10 20:58:26 -07:00
33b1457e91 Add first draft of Idris post 2020-02-29 16:12:12 -08:00
9e399ebe3c Add initial draft of typesafe interpreter post
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-27 23:09:51 -08:00
c207d1dfcf Remove unused line at the end of works1.txt 2020-02-23 21:26:37 -08:00
0f744888ef Move testing code into a script 2020-02-11 18:37:21 -08:00
e7f0ccfa16 Finish compiler series 2020-02-10 19:18:55 -08:00
e5d01a4e19 Add the primes program from compiler series 2020-02-10 18:13:04 -08:00
b7d72f2fbf Implement garbage collection in runtime 2020-02-06 11:32:19 -08:00
281dbbd174 Track allocated nodes using a G-machine struct in compiler series. 2020-02-06 10:05:26 -08:00
8d22acfe78 Switch to single stack in runtime for Compiler Series 2020-01-31 15:29:12 -08:00
803f52b2d0 Update the compiler to leave the stack clean 2020-01-27 20:29:01 -08:00
2f96abeef6 Instantiate compiler for garbage collection 2020-01-27 14:52:25 -08:00
d9544398b9 Add homework 3 solution for CS325 2020-01-02 21:20:32 -08:00
80410c9200 Extract common parsing code 2019-12-31 21:59:13 -08:00
4e918db5cb Add the post for the second homework assignment. 2019-12-30 23:28:22 -08:00
382102f071 Add solution to CS325 hw2 2019-12-30 20:04:39 -08:00
19aa126025 Add the first post in CS325 series 2019-12-29 22:47:36 -08:00
75664e90bb Add solutions for HW1 for CS325 madness 2019-12-27 23:20:37 -08:00
f74209c970 Add common code for CS325 madness 2019-12-27 23:20:18 -08:00