Commit graph

39 commits

Author SHA1 Message Date
Leonardo de Moura
d834d88b88 fix: performance bottleneck
@Kha @dselsam

The instances
```
instance (sep) : Coe (Array Syntax) (SepArray sep)

instance (sep) : Coe (SepArray sep) (Array Syntax)
```
The instances above generate a loop. The current `isNewAnswer`
predicate is too weak and assumes that answers with different
metavariables are different. Note that, using `isDefEq` there is
incorrect and too expensive. I will fix this later in the future.
In the meantime, I am using `CoeTail` to avoid the loop.
2021-01-24 17:45:50 -08:00
Sebastian Ullrich
21a826ee51 chore: naming 2021-01-20 22:47:18 +01:00
Sebastian Ullrich
a9f96ace3e chore: naming 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
79107a2316 feat: copy & store whole ref range in SourceInfo 2021-01-20 16:48:50 +01:00
Sebastian Ullrich
462e1d54a3 chore: replace uses of copyInfo with automatic position copying in syntax quotations
We could introduce a `copyPos` alternative, but turns out we don't need it right now
2021-01-20 16:48:50 +01:00
Sebastian Ullrich
51e408590f chore: do not copy whitespace in Syntax synth helpers 2021-01-20 16:48:50 +01:00
Leonardo de Moura
4752c56fe8 feat: improve range of missing cases: ... error message
@Kha I added the helper combinator `withHeadRefOnly x`. I executes `x`
using the head token of the current `ref` as the new `ref`.
2021-01-14 14:48:53 -08:00
Leonardo de Moura
791388400b feat: improve do error messages
cc @Kha @Vtec234
2021-01-14 14:18:56 -08:00
Leonardo de Moura
bfc1a16c02 chore: adjust instance param order 2021-01-13 18:31:41 -08:00
Leonardo de Moura
e742dd1348 feat: allow user to set Simp.Config at simp 2021-01-01 15:12:18 -08:00
Sebastian Ullrich
6e33020da4 feat: version information API 2020-12-29 14:42:48 -08:00
Leonardo de Moura
ccefe970dc feat: store endPos at Log.lean 2020-12-23 19:09:41 -08:00
Sebastian Ullrich
cf73233dd2 refactor: use quotations & implicit token positions from getRef to clean up a bit 2020-12-21 17:32:36 +01:00
Leonardo de Moura
bbcd2247f2 feat: extend valid set of valid auto bound names
@Kha The motivation was Andrew's example :)
Users often use `u₁`, `u1`, `u₂`, ... to name universe variables.
2020-12-19 12:36:19 -08:00
Leonardo de Moura
68701b86e4 feat: add Repr Name 2020-12-18 14:32:49 -08:00
Leonardo de Moura
5f6e66a53f refactor: Repr
Modifications:
- Result type is `Format`
- It takes the context precedence like Haskell `Show`
2020-12-18 11:21:30 -08:00
Leonardo de Moura
dee3c2c8d8 feat: improve deriving DecidableEq 2020-12-17 17:30:23 -08:00
Leonardo de Moura
87b6385bea feat: add deriving DecidableEq 2020-12-17 17:30:23 -08:00
Leonardo de Moura
d4f4eda0ea feat: make sure expandMacro reduces prec and prio DSLs 2020-12-15 15:27:39 -08:00
Leonardo de Moura
abe7481453 feat: elaborate prio DSL 2020-12-14 16:25:10 -08:00
Leonardo de Moura
a2afd10060 feat: prio DSL 2020-12-14 16:07:02 -08:00
Leonardo de Moura
fcaf38d566 fix: handle prec DSL at infixl macro 2020-12-14 15:35:37 -08:00
Leonardo de Moura
911a433010 chore: remove temp comments 2020-12-14 15:10:41 -08:00
Leonardo de Moura
f95a450894 feat: add builtin prec/prio parsers 2020-12-14 15:05:39 -08:00
Leonardo de Moura
7d1d7dc171 feat: prec DSL 2020-12-14 13:25:08 -08:00
Leonardo de Moura
3b6d65c3c3 chore: use deriving Inhabited 2020-12-13 10:09:20 -08:00
Leonardo de Moura
5249fdc24d chore: cleanup and style 2020-12-12 10:36:26 -08:00
Sebastian Ullrich
8dfa588983 feat: introduce SepArray and use it for sepBy antiquotation splices 2020-12-12 16:02:15 +01:00
Leonardo de Moura
0b8edeeadc chore: use double quoted literals 2020-12-09 17:51:01 -08:00
Sebastian Ullrich
3c9619ed09 feat: Syntax.isNone: return true on missing 2020-12-08 17:33:51 +01:00
Leonardo de Moura
b95c4788c1 refactor: OfDecimal ==> OfScientific
`decimalLit` ==> `scientificLit`
2020-12-03 08:08:19 -08:00
Leonardo de Moura
d1f4d4f57e feat: scientific notation 2020-12-03 07:49:20 -08:00
Leonardo de Moura
facb28d080 feat: basic support for decimal numbers 2020-12-02 14:54:59 -08:00
Leonardo de Moura
0869f38de4 chore: update structure, class, inductive 2020-11-27 15:09:30 -08:00
Leonardo de Moura
9023e93b3e refactor: move Array.set to Prelude 2020-11-25 11:02:25 -08:00
Leonardo de Moura
304c80d610 feat: use <| 2020-11-19 09:03:38 -08:00
Leonardo de Moura
f67c93191f feat: use |>. 2020-11-19 08:38:47 -08:00
Leonardo de Moura
db5fe843de chore: add expandInterpolatedStr helper function, rename msg! => m! 2020-11-14 13:52:52 -08:00
Leonardo de Moura
8c4ac7ccc1 refactor: rename LeanInit ==> Meta, and reduce dependencies 2020-11-13 16:00:31 -08:00
Renamed from src/Init/LeanInit.lean (Browse further)