Commit Graph

39 Commits

Author SHA1 Message Date
aa6604038b cleanup 2026-03-27 20:19:27 -07:00
a40956a4cc fix names growing in liftWhere and redundant error for ErrorHole
Some checks failed
Publish Playground / build (push) Has been cancelled
Publish Playground / deploy (push) Has been cancelled
2026-03-21 20:45:28 -07:00
cfdddbb002 cons/nil for pair/unit in scheme backend
Some checks failed
Publish Playground / build (push) Has been cancelled
Publish Playground / deploy (push) Has been cancelled
2026-03-18 17:30:28 -07:00
5eb43f6252 Cons/Nil optimization for scheme backend 2026-03-18 17:30:17 -07:00
92ced8dcd2 LSP document symbols 2026-03-07 21:33:12 -08:00
c15f22a180 Use deriving
Some checks failed
Publish Playground / build (push) Has been cancelled
Publish Playground / deploy (push) Has been cancelled
2026-02-24 21:21:44 -08:00
983dde4de2 derive Show and Eq, improvements to LSP 2026-02-24 20:14:30 -08:00
a789cffcce move Error to its own file 2026-02-24 11:04:38 -08:00
34744a8edc refactor TopContext to use a ModContext for the current context 2026-02-21 21:34:16 -08:00
0a5ad3cc9b Switch to esm, add #export statement to newt, tweaks to LSP 2026-02-21 15:08:15 -08:00
24048eadf1 use string for module names 2026-02-13 10:18:28 -08:00
bca61f95a0 Improve error locations 2026-02-07 16:55:33 -08:00
2766a4ae01 Unsolved metas are errors 2026-02-07 16:26:07 -08:00
00296f4d10 Allow local names to override imports 2026-02-07 11:02:51 -08:00
0c206a94ab Forward declaration syntax for data
Allow:
```newt
data Foo : U
```
as a forward declaration for data. (The `Foo : U` syntax still works for
now.)
2026-02-07 07:52:00 -08:00
2ca43b6350 Dependent records
The projection functions needed `foo` -> `self .foo` in the types
2026-01-05 20:52:35 -08:00
bfe79d65ea remove redundant $ 2025-12-30 22:00:27 -08:00
0dfa96cb5e use new case syntax instead of the 2025-12-29 10:48:22 -08:00
9bbc7208d7 Surface erasure errors in editor, fix issue checking erasure after inlining 2025-12-26 13:01:30 -08:00
79113fbce5 add impossible clauses (not checked yet) 2025-11-14 10:53:35 -08:00
551e31d589 Fix issue when multiple constructors are defined on one line. Update aoc2024 tests to not use debugStr. 2025-10-24 14:50:26 -07:00
11ffd96a91 Remove erased function arguments 2025-10-23 22:34:14 -07:00
15b892510e Map Bool-shaped things to javascript bool, add if/then and tertiary to code gen 2025-10-20 11:08:12 -07:00
8209d2d839 Use numbers for constructor tags. 2025-10-04 14:56:59 -07:00
36d9f81f61 move inline/substMeta to compile step 2025-09-23 21:25:58 -07:00
3143fa7b0a More inlining, fix issues in eval of case 2025-09-23 20:22:50 -07:00
49c90cce6d inline "simple" functions and inline after app in inline 2025-09-20 17:21:19 -07:00
97c50a254a the "mode" argument to eval was unused and not fully propagated 2025-09-02 21:10:32 -07:00
f90d171598 improve QName comparison time 2025-08-29 11:08:34 -07:00
a79f92793b [ fix ] solve autos in data declarations 2025-07-26 08:09:46 -07:00
8dae8880f9 Remove unnecessary IORef for meta context 2025-05-20 21:36:52 -07:00
eeb790f1b2 Keep track of autos to be solved, shaves about 12% off of Elab.newt processing time 2025-04-05 21:27:10 -07:00
549cca19e3 Add flags to TopEntry, detect duplicate constructors, fix issue with missing constructors in CompileExp. 2025-04-05 14:33:54 -07:00
0477ee397f encode enum as string 2025-04-01 06:09:23 -07:00
f006fa875d Classify constructors, only dump modules if they successfully compile 2025-03-31 21:21:37 -07:00
654e5cdb25 split processDecl into separate functions 2025-03-30 11:06:30 -07:00
5ab2a28bcf Prep to switch from Def to CExp for backend passes. 2025-03-15 15:46:56 -07:00
001cba26ee first pass at liftWhere 2025-02-15 21:35:06 -08:00
3c2615ecc1 move idris version to orig and newt version to src.
Development is being done on the newt version now.
2025-02-15 16:36:29 -08:00