|
2d8c4d16c0
|
Fix typechecking of mutually recursive functions.
|
2020-06-21 00:47:26 -07:00 |
|
|
6198738acc
|
Make proofreading-based fixes.
|
2020-06-20 23:50:26 -07:00 |
|
|
59231fd00d
|
Finish draft of part 12 of compiler series.
|
2020-06-20 22:03:57 -07:00 |
|
|
645d41159b
|
Remove unneeded parent class.
|
2020-06-18 23:06:13 -07:00 |
|
|
4a94d0e507
|
Add first draft of lambdas.
|
2020-06-14 02:00:20 -07:00 |
|
|
1e5d43e5e8
|
Properly handle null types in pattern typechecking.
|
2020-06-14 00:43:39 -07:00 |
|
|
33f8040886
|
Use mangled names in variable environments.
|
2020-06-13 23:43:52 -07:00 |
|
|
522d196446
|
Maybe finish the let/in code?
|
2020-06-01 00:23:41 -07:00 |
|
|
baf7427737
|
Start working on translation.
|
2020-05-31 18:52:52 -07:00 |
|
|
6d1be9527e
|
Start working on a lifted version of a definition.
|
2020-05-31 14:37:33 -07:00 |
|
|
a78db7500f
|
Adjust type output.
|
2020-05-31 00:50:58 -07:00 |
|
|
de08f0febf
|
Mark some definitions as global, so as not to capture them.
|
2020-05-31 00:34:12 -07:00 |
|
|
dec6d834f5
|
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 |
|
|
feeee2039b
|
Check for free variables in the environment before generalizing.
|
2020-05-30 16:40:27 -07:00 |
|
|
74f54abf5b
|
Add parsing of let/in.
|
2020-05-28 14:44:12 -07:00 |
|
|
63f82a1c64
|
Add typechecking to let/in expressions.
|
2020-05-26 00:52:54 -07:00 |
|
|
35928b3a54
|
Extract ordering functionality into definition group.
|
2020-05-25 23:58:56 -07:00 |
|
|
5b6378c9e4
|
Add a struct to contain groups of mutually recursive definitions.
|
2020-05-25 22:11:45 -07:00 |
|
|
71bc55c696
|
Fork off the 12th version of the compiler.
|
2020-05-25 21:20:41 -07:00 |
|
|
fa19fa2792
|
Build and test version 11 of the compiler instead of 10.
|
2020-04-26 21:28:34 -07:00 |
|
|
5049b81536
|
Update to LLVM 10.
|
2020-04-26 21:24:24 -07:00 |
|
|
f97d3f913c
|
Add missing arity checks to compiler series
|
2020-04-14 19:21:33 -07:00 |
|
|
9d16d3840a
|
Make compiler check for arity in part 11 of compiler series.
|
2020-04-14 16:20:12 -07:00 |
|
|
9fb9eec394
|
Finish draft of part 11 of compiler series
|
2020-04-14 16:19:54 -07:00 |
|
|
8cbe59b6b2
|
Rename inaccurately named rule
|
2020-04-14 15:58:25 -07:00 |
|
|
a18c30dca8
|
Update example to include polymorphism
|
2020-04-14 15:58:13 -07:00 |
|
|
50326ffcc3
|
Adjust grammar to allow for broader range of type inputs.
|
2020-04-13 23:17:34 -07:00 |
|
|
207efc7ded
|
Make substitution replace types at every lookup step
|
2020-04-13 17:59:57 -07:00 |
|
|
2a936927a1
|
Integrate new types into the rest of the project
|
2020-04-13 17:12:43 -07:00 |
|
|
379a64f379
|
Add parsed type data structure, type application and arity.
|
2020-04-13 17:08:03 -07:00 |
|
|
682e0d3e1c
|
Fork off code for part 11 of compiler series.
|
2020-04-09 23:48:53 -07:00 |
|
|
2e0318347c
|
Add seemingly missing string includes.
|
2020-04-09 16:26:10 -07:00 |
|
|
63601eaf40
|
Add missing source file
|
2020-03-25 03:36:17 -07:00 |
|
|
37921c4466
|
Remove debug output
|
2020-03-25 03:35:30 -07:00 |
|
|
08246f1474
|
Finalize draft of polymorphism post
|
2020-03-25 03:22:21 -07:00 |
|
|
de435d6c80
|
Switch to using type schemes and implement polymorphism in compiler series
|
2020-03-24 23:04:51 -07:00 |
|
|
e07da0c9b1
|
Implement new ordered typing in compiler series
|
2020-03-24 22:00:11 -07:00 |
|
|
c286c9edcc
|
Separate definitions in compiler series
|
2020-03-24 21:08:06 -07:00 |
|
|
2e74291ac9
|
Switch type environment to using pointers
|
2020-03-24 18:04:01 -07:00 |
|
|
addfc2aa55
|
Only store type in case expression
|
2020-03-24 17:53:06 -07:00 |
|
|
9e14b2920c
|
Explain graph code
|
2020-03-14 21:04:13 -07:00 |
|
|
ccac53854d
|
Start work on algorithms in compiler post 10
|
2020-03-14 17:18:06 -07:00 |
|
|
90ed26ab39
|
Set up script to test latest compiler version
|
2020-03-10 22:26:02 -07:00 |
|
|
efadf17561
|
Fork into version 10 of the compiler for blog series
|
2020-03-10 20:58:26 -07:00 |
|
|
9e10eda41c
|
Remove unused line at the end of works1.txt
|
2020-02-23 21:26:37 -08:00 |
|
|
972682969c
|
Move testing code into a script
|
2020-02-11 18:37:21 -08:00 |
|
|
fc6621b8d1
|
Finish compiler series
|
2020-02-10 19:18:55 -08:00 |
|
|
b9f508db6a
|
Add the primes program from compiler series
|
2020-02-10 18:13:04 -08:00 |
|
|
d86ff453bb
|
Implement garbage collection in runtime
|
2020-02-06 11:32:19 -08:00 |
|
|
30579afc6d
|
Track allocated nodes using a G-machine struct in compiler series.
|
2020-02-06 10:05:26 -08:00 |
|