20 Commits (master)

Author SHA1 Message Date
Danila Fedorin a336b27b6c Remove unneeded explicit calls to std::string 1 year ago
Danila Fedorin 8a352ed3ea Roll back optimization changes. 1 year ago
Danila Fedorin 02f8306c7b Use an instruction instead of a special-case boolean instruction. 1 year ago
Danila Fedorin 7a631b3557 Make a few more things classes. 1 year ago
Danila Fedorin 55486d511f Make some refactors for name mangling and encapsulation. 1 year ago
Danila Fedorin 6080094c41 Require mangled names for global variables. 1 year ago
Danila Fedorin 6b8d3b0f8a Refactor errors and update post draft. 1 year ago
Danila Fedorin 725958137a Factor type into case strategy constructor. 1 year ago
Danila Fedorin f00a6a7783 Actually use the environment for binop functions. 1 year ago
Danila Fedorin 2a81fdd9fb Stop using mangled names for local variables. 1 year ago
Danila Fedorin 17c59e595c Add assertion regarding local name mangling. 1 year ago
Danila Fedorin 76675fbc9b Make make_case_for throw from the second time on. 1 year ago
Danila Fedorin 1a05d5ff7a Add type errors to identifier nodes. 1 year ago
Danila Fedorin 56f0dbd02f Prevent case compilation from crashing and burning. 1 year ago
Danila Fedorin 9fc0ff961d Add more built-in boolean-specific instructions. 1 year ago
Danila Fedorin 73441dc93b Register booleans as internal types. 1 year ago
Danila Fedorin 85394b185d Add prototype impl of case specialization. 1 year ago
Danila Fedorin e337992410 Add sources for unification type errors. 1 year ago
Danila Fedorin eade42be49 Print locations in non-unification type errors. 1 year ago
Danila Fedorin 5dbf75b5e4 Fork off version 13 of the compiler. 1 year ago
Danila Fedorin 8524e098a8 Make proofreading-based fixes. 1 year ago
Danila Fedorin ad1946e9fb Add first draft of lambdas. 2 years ago
Danila Fedorin 68910458e8 Properly handle null types in pattern typechecking. 2 years ago
Danila Fedorin 240e87eca4 Use mangled names in variable environments. 2 years ago
Danila Fedorin 6b5f7e25b7 Maybe finish the let/in code? 2 years ago
Danila Fedorin e7229e644f Start working on translation. 2 years ago
Danila Fedorin c84ff11d0d Add typechecking to let/in expressions. 2 years ago
Danila Fedorin 1905601aaa Fork off the 12th version of the compiler. 2 years ago
Danila Fedorin 122a1d73d3 Integrate new types into the rest of the project 2 years ago
Danila Fedorin d7846e0b32 Fork off code for part 11 of compiler series. 2 years ago
Danila Fedorin 493419f324 Remove debug output 2 years ago
Danila Fedorin 577e0ad930 Finalize draft of polymorphism post 2 years ago
Danila Fedorin 2a12f7f31e Switch to using type schemes and implement polymorphism in compiler series 2 years ago
Danila Fedorin 0efa05142f Separate definitions in compiler series 2 years ago
Danila Fedorin 5d53678e83 Only store type in case expression 2 years ago
Danila Fedorin 8ee016e189 Fork into version 10 of the compiler for blog series 2 years ago
Danila Fedorin 64227f2873 Finish implementation of compiler 2 years ago
Danila Fedorin c79b5a4120 Start writing actual compillation code in compiler series 2 years ago
Danila Fedorin 9531f4d8e3 Add chapter 8 starting code for compiler series 2 years ago
Danila Fedorin 21f90d85c5 Add finishing touches to code for part 6 of compiler series 2 years ago
Danila Fedorin 3901c9b115 Add print methods to instructions 2 years ago
Danila Fedorin d90993a93c Implement ast_case::compile for compiler series and reference code 2 years ago
Danila Fedorin 7e9bd95846 Write explanations of AST refactor in compiler series 2 years ago
Danila Fedorin d3d73e0e9c Fix up compile in compiler blog part 6, and add more text. 2 years ago
Danila Fedorin d9c151d774 Continue implementation of compilation 2 years ago
Danila Fedorin 8c0a6c834e Create new 'branch' for part 6 of compiler series 2 years ago
Danila Fedorin 05af1350c8 Add errors ection to Part 4 of compiler posts 2 years ago
Danila Fedorin 8ba501bd84 Add output and fix two bugs. 2 years ago
Danila Fedorin 6344ce11ce Add CMake file and code for post 4 2 years ago
Danila Fedorin 619c346897 Do the first round of revisions on part 3 2 years ago