Commit Graph

  • d0a0cc8209 Rename ast_reducing -> reduced_ast greg 2018-06-04 19:12:48 -0700
  • 5aa0e10e7a Some ADT work greg 2018-06-04 19:04:51 -0700
  • 27729cefdf Some improvements to the thing greg 2018-06-04 18:17:03 -0700
  • df76e7c120 Pretty-print type table greg 2018-06-03 23:25:22 -0700
  • 889610f0b0 Pretty-print Symbol Table greg 2018-06-03 23:04:07 -0700
  • 3beabf4678 Start eval-ing data constructors greg 2018-06-03 20:55:55 -0700
  • 25790f8643 Added super-janky prelude capability greg 2018-06-03 18:43:31 -0700
  • ff5446af3f Add symbols from symbol table into global type context greg 2018-06-03 18:09:42 -0700
  • 5d84153c9e Want bin expressions typed soon greg 2018-06-03 02:49:54 -0700
  • 0b0f6b6b50 Symbol table handles functions better greg 2018-06-03 02:39:49 -0700
  • 856a360aba Types need handle to symbol table greg 2018-06-03 02:27:52 -0700
  • 81ca9ee20f Add some data structures back greg 2018-06-03 02:20:14 -0700
  • 4caf8096b3 Add Scheme, TypeEnv, Substitution data structs greg 2018-06-03 00:47:29 -0700
  • c65907388d Some ADT work greg 2018-05-30 23:54:24 -0700
  • 33c22c8bbc Typecheck values greg 2018-05-29 00:57:27 -0700
  • 4a27af2136 Add a super-basic test greg 2018-05-29 00:21:03 -0700
  • 07af54b78a More work greg 2018-05-29 00:09:12 -0700
  • c4666b82ec Basics greg 2018-05-28 23:39:58 -0700
  • 274dd1ccb0 Basic stuff greg 2018-05-27 02:44:06 -0700
  • 70ec79c4b3 Lol starting over from scratch again greg 2018-05-27 00:14:47 -0700
  • f88d2331e3 printf debugs for problems with function typing greg 2018-05-23 02:38:13 -0700
  • c8f961abbf Functions greg 2018-05-22 00:36:02 -0700
  • d040d76bfa Start handling function case greg 2018-05-21 20:57:51 -0700
  • 887ba46b0b Fix this thing greg 2018-05-21 12:21:42 -0700
  • a80db9e4c2 Debug types greg 2018-05-21 03:09:38 -0700
  • c986233a95 Adding bindings seems to work? greg 2018-05-21 02:16:29 -0700
  • bb29df4a73 Variable binding insertion infrastructure greg 2018-05-21 01:19:50 -0700
  • 4db3595d7c More work on variables greg 2018-05-21 00:06:31 -0700
  • 217ee73fc9 Literals greg 2018-05-20 23:44:12 -0700
  • 93309c025e Some work greg 2018-05-20 23:14:25 -0700
  • b67512a9e1 Add Infer struct greg 2018-05-20 23:05:41 -0700
  • 8e6f605fab Type alias "TypeName" greg 2018-05-20 22:37:58 -0700
  • ba4185b0fb Back to including typechecking code in pipeline greg 2018-05-20 20:58:56 -0700
  • 7a2a4df297 Clearing out most of the cruft from typechecking greg 2018-05-20 20:47:24 -0700
  • 642e9da8ee Move everything symbol-table-related into a separate module greg 2018-05-20 20:36:57 -0700
  • cea7427847 put TypeEnvironment on TypeContext greg 2018-05-20 18:44:31 -0700
  • 3156c31dfc Variable lookup greg 2018-05-19 01:57:03 -0700
  • 2e457cd5e8 First real inferring greg 2018-05-18 03:12:18 -0700
  • 843d895f2b infer infra greg 2018-05-18 01:43:51 -0700
  • 734c53ce0d Starting to deal with actual expr inferring greg 2018-05-18 00:21:11 -0700
  • 3a3b8dd440 TypeEnvironment lives in Infer greg 2018-05-17 23:27:28 -0700
  • c96a56a7ac fresh greg 2018-05-17 23:21:23 -0700
  • 4017857a3a Unification greg 2018-05-17 23:13:53 -0700
  • 131c83b64d Consult these haskell programs from https://github.com/quchen/articles/tree/master/hindley-milner greg 2018-05-17 02:30:06 -0700
  • 9e0f8b8a14 InferError greg 2018-05-17 02:29:17 -0700
  • 7121624f77 Type Env greg 2018-05-17 02:25:36 -0700
  • 48e795decc apply_substitution for PolyTypes greg 2018-05-17 01:06:52 -0700
  • a26da934f4 Substitution monotypes greg 2018-05-17 00:48:48 -0700
  • 1de1cd9cfd For H-M, add types and some impls greg 2018-05-17 00:36:51 -0700
  • 6f639b9030 Type type structure greg 2018-05-16 02:16:58 -0700
  • 8f0104ebc7 Deletion greg 2018-05-16 01:13:02 -0700
  • 36cd7e080d Even more deletions greg 2018-05-16 01:08:06 -0700
  • f48a25779c Lol just get rid of all the old code, start from scratch again greg 2018-05-16 01:01:30 -0700
  • 808a1bfc98 Still more deletions greg 2018-05-15 23:58:52 -0700
  • c7e46c1cfa KIll any commented code greg 2018-05-15 23:58:06 -0700
  • 98cfcfc18d Eval shouldn't be aware of types greg 2018-05-15 23:48:36 -0700
  • b4c7ea3d02 Show bindings too in debug greg 2018-05-15 23:03:50 -0700
  • e7c89ed840 Some more refactoring greg 2018-05-15 22:08:37 -0700
  • b0e38f7f5b Refactor greg 2018-05-15 21:53:50 -0700
  • 276662d98a Some code rearrangements greg 2018-05-15 21:47:08 -0700
  • e8e9265b26 Use less verbose match syntax greg 2018-05-15 14:26:11 -0700
  • cb316a973e Getting back to hindley-milner greg 2018-05-15 03:25:40 -0700
  • e64861b602 Some eval tests greg 2018-05-14 23:33:11 -0700
  • 1673fd1cf9 Fix test greg 2018-05-14 23:25:28 -0700
  • c00effcbdd Add _ greg 2018-05-14 23:22:43 -0700
  • 8378170fbd Kill comments greg 2018-05-14 22:56:26 -0700
  • 7ab385d398 Bring custom ADTs to the repl greg 2018-05-14 22:55:53 -0700
  • 9fb148bb02 Make compile again greg 2018-05-14 15:01:37 -0700
  • 97df2fa344 I dunno greg 2018-05-14 09:46:25 -0700
  • a08134a747 Delete old code in eval greg 2018-05-13 23:08:10 -0700
  • 6707b2bb9c debug outputs in order greg 2018-05-13 18:28:10 -0700
  • 3ac50f974d Pass around reference to type context in evaluator greg 2018-05-13 18:02:54 -0700
  • 160ce95e5f Fully comment example source file greg 2018-05-13 17:36:27 -0700
  • afc4281e7f Evaluate function arguments in context before applying them greg 2018-05-13 17:32:41 -0700
  • 8d6fea942f Handle function definition before use greg 2018-05-13 17:24:21 -0700
  • 6d93c758a2 Add function to symbol table greg 2018-05-13 15:54:15 -0700
  • aff421cd99 Working with symbol table greg 2018-05-13 15:42:10 -0700
  • 493d76da0b Add symbol table data structure to typechecking greg 2018-05-13 15:17:25 -0700
  • eb681fbff9 Make parse error message nicer greg 2018-05-13 13:40:11 -0700
  • f3e3843528 Decomplexify delimited! greg 2018-05-13 02:50:43 -0700
  • 6b90e19eb1 Simplify expect! macro greg 2018-05-13 02:42:43 -0700
  • 210ae47c8b Get rid of lambda greg 2018-05-13 01:43:29 -0700
  • 70794d8ff1 For expression parsing greg 2018-05-13 01:40:14 -0700
  • 532c8c45b4 Parse while expressions greg 2018-05-12 23:49:02 -0700
  • 24b532df06 This doesn't need to be a closure greg 2018-05-12 20:51:30 -0700
  • ac576be604 Trim newline in getline() greg 2018-05-12 14:00:48 -0700
  • 6bf106a1a3 Equality greg 2018-05-12 13:58:21 -0700
  • 161e47fe91 Add schala source file test.schala greg 2018-05-12 13:55:17 -0700
  • 1a58f3b7af Add fizzbuzz source greg 2018-05-12 13:53:10 -0700
  • 44e585fca2 Conditionals greg 2018-05-12 13:51:12 -0700
  • 3f836eb74f Kill some warnings greg 2018-05-12 13:00:39 -0700
  • abf25d648d Change repl behavior of strings greg 2018-05-12 12:58:57 -0700
  • 1f6e6d9b31 Tuples greg 2018-05-12 12:56:39 -0700
  • e2703121d8 Kill unneeded import greg 2018-05-12 12:37:49 -0700
  • e5b6b41422 Error msg greg 2018-05-12 12:37:05 -0700
  • 6c5e3dea5d Assignment greg 2018-05-12 03:51:42 -0700
  • bd8bf1945c Super simple janky input greg 2018-05-12 02:27:54 -0700
  • 9e393d2753 Kill old type structure greg 2018-05-12 02:20:50 -0700
  • 822420a9d5 Add an eval test greg 2018-05-12 02:18:34 -0700
  • 6f8dc9bedd rename IntLiteral -> NatLiteral greg 2018-05-12 01:44:03 -0700