Commit Graph

335 Commits

Author SHA1 Message Date
rhiannon morris c9f66bb6af minor refactor 2024-04-18 11:49:19 +02:00
rhiannon morris 67c825ab39 add coercion regularity to the equality checker (not to whnf) 2024-04-15 22:58:17 +02:00
rhiannon morris b7dc5ffdc4 add check for #[main] type 2024-04-14 16:20:40 +02:00
rhiannon morris dd697ba56e add CheckBuiltin 2024-04-14 16:20:25 +02:00
rhiannon morris 32b9fe124f minor tweaks in Q.Typing.Context 2024-04-14 15:48:10 +02:00
rhiannon morris 7883a3cae7 pretty printing fixes 2024-04-12 21:54:25 +02:00
rhiannon morris a1d8fd4ab5 %inline 2024-04-12 21:53:54 +02:00
rhiannon morris 9d60f366cf add #![log] pragma 2024-04-12 21:53:54 +02:00
rhiannon morris f56f594839 push multiple loglevel changes at once 2024-04-12 21:53:54 +02:00
rhiannon morris fca75377a0 MakeName ⇒ MkName for consistency 2024-04-12 21:53:50 +02:00
rhiannon morris 11b0ab6a25 remove default from `FromParser.fromParserPure` and `Main.step` 2024-04-07 03:20:42 +02:00
rhiannon morris 7a0bc73d25 approximate log stack in handleLogDiscard 2024-04-06 20:14:24 +02:00
rhiannon morris 567176e076 log refactors 2024-04-05 18:43:00 +02:00
rhiannon morris 3b6ae36e4e add logging to core 2024-04-04 19:26:41 +02:00
rhiannon morris 861bd55f94 add log effects to FromParser 2024-04-04 19:26:41 +02:00
rhiannon morris 78555711ce add Q.Log 2024-04-04 19:26:41 +02:00
rhiannon morris 582666a254 comments in infer for coercions 2024-03-21 21:29:13 +01:00
rhiannon morris a9e8f14ad5 fix a small bug in Q.Whnf.Coercion 2024-03-21 21:29:01 +01:00
rhiannon morris a8ac6f11f7 fix a quantity in CaseBox 2024-02-28 16:49:15 +01:00
rhiannon morris b67162bda1 fix the other similar loops
closes #38, again
2024-02-24 16:04:38 +01:00
rhiannon morris 325e128063 add η for False and True 2024-02-10 11:39:07 +01:00
rhiannon morris 05a688d49e reject "" in NatExtra.fromHex 2024-02-10 10:14:22 +01:00
rhiannon morris f337625801 remove most noLocs 2024-02-10 10:14:22 +01:00
rhiannon morris 1f01cec322 refactor Main a whole lot 2024-02-10 10:14:22 +01:00
rhiannon morris 103f019dbd move NDefinition to Quox.Definition and add an untyped one 2024-02-10 10:14:22 +01:00
rhiannon morris 2cafb35bc1 fix some comments 2024-02-10 10:14:22 +01:00
rhiannon morris 47069a9316 fill a stray hole 2024-02-10 10:14:22 +01:00
rhiannon morris 81783dbae0 fix typechecker loop when coercing boxes
closes #38
2024-02-10 10:07:06 +01:00
rhiannon morris a14c4ca1cb never inline let bindings from the original source 2023-12-21 18:04:12 +01:00
rhiannon morris b7074720ad pretty printing fixes 2023-12-21 18:03:57 +01:00
rhiannon morris 48a050491c fix several quantity issues
- contents of box intro
- definition of let
- non-recursive ℕ case
- also make a few var names more consistent
2023-12-21 18:01:17 +01:00
rhiannon morris aa4ead592a allow "let x : A = e in s" with type annotation 2023-12-21 17:54:31 +01:00
rhiannon morris 54db7e27ef make #[fail] run in the current namespace 2023-12-21 17:53:46 +01:00
rhiannon morris 7afcbfe258 recognise nats other than 0 in eq checker 2023-12-21 17:48:12 +01:00
rhiannon morris 0fdd4741be print quantity on let 2023-12-07 01:43:39 +01:00
rhiannon morris 03c197bd04 add local bindings to context
- without this, inside the body of `let x = e in …`, the typechecker
  would forget that `x = e`
- now bound variables can reduce, if they have a definition, so RedexTest
  needs to take the context too
2023-12-07 01:43:39 +01:00
rhiannon morris cdf1ec6deb fix a comment 2023-12-04 23:38:17 +01:00
rhiannon morris e48f03a61c multiple semi-sep binds in a let 2023-12-04 23:27:59 +01:00
rhiannon morris b1699ce022 add let to the core 2023-12-04 22:47:52 +01:00
rhiannon morris 68d8019f00 add `let` to frontend syntax 2023-12-04 18:56:45 +01:00
rhiannon morris 59e7a457a6 let case be the head of an application too 2023-12-04 18:28:57 +01:00
rhiannon morris 4291afd51b allow fst/snd to take multiple arguments
also succ though that won't be well typed
2023-12-04 18:21:28 +01:00
rhiannon morris cc78ccd940 fix some parenthesisation 2023-11-06 22:11:11 +01:00
rhiannon morris 50984aa1aa refactor #[attribute] stuff 2023-11-05 20:49:02 +01:00
rhiannon morris c48b7be559 add html output highlighting 2023-11-05 15:47:52 +01:00
rhiannon morris 040a1862c3 refactor scheme prelude 2023-11-05 15:45:33 +01:00
rhiannon morris bf8cced888 swap some delim/syntax highlighting around 2023-11-05 15:45:07 +01:00
rhiannon morris 04af7ae942 highlight the @ in dim apps as a delim 2023-11-05 15:44:44 +01:00
rhiannon morris d9cdf1306d fix IsReserved
IsReserved should be true for e.g. "λ" but not "fun", since only the
first can show up in the lexer output
2023-11-05 15:43:20 +01:00
rhiannon morris 6c8ebfb804 fix some comments 2023-11-05 15:41:21 +01:00