Leonardo de Moura
6bc41f8dde
refactor(frontends/lean/elaborator): move placeholder_elaborator to its own module
2014-09-10 16:42:49 -07:00
Leonardo de Moura
9ce356e515
refactor(frontends/lean/local_context): do not use references in the local context
2014-09-10 16:42:49 -07:00
Soonho Kong
63c0510a05
feat(emacs/lean-tags): detect and support multiple TAGS
...
Close #170
2014-09-10 16:38:36 -07:00
Soonho Kong
1ea8b66a39
fix(emacs/lean-company): enable auto-complete when prefix length >= 1
...
[skip ci]
2014-09-10 16:21:44 -07:00
Soonho Kong
1c5497e632
feat(emacs/lean-project): add lean-project-create to imenu
...
Related with #170
2014-09-10 15:19:11 -07:00
Soonho Kong
b05ca1db0f
fix(emacs/lean-tags): handle exceptions from find-tag
2014-09-10 14:14:42 -07:00
Soonho Kong
b51e8dd1b9
fix(emacs/lean-server): respect order of messages in check-buffer-and-partition
2014-09-10 14:14:42 -07:00
Soonho Kong
7c4debd1d1
feat(emacs/lean-server): handle modified buffer when send VISIT cmd
...
Close #159
2014-09-10 14:14:42 -07:00
Leonardo de Moura
669b1bff45
refactor(frontends/lean/elaborator): rename choice_elaborator to choice_iterator and move to separate module
2014-09-10 11:20:16 -07:00
Leonardo de Moura
e128610711
chore(tests): use option -t 100000 to speedup tests
2014-09-10 11:20:16 -07:00
Leonardo de Moura
4a4de27a6c
refactor(frontends/lean/elaborator): move local_context to separate file
2014-09-10 11:20:16 -07:00
Leonardo de Moura
4ea322febc
chore(frontends/lean/elaborator): minor cleanup
2014-09-10 11:20:16 -07:00
Soonho Kong
cab1811927
feat(emacs/lean-server): print out signal event to debug buffer
2014-09-10 09:07:16 -07:00
Leonardo de Moura
b82092a123
fix(frontends/lean/parser): segmentation fault after REPLACE, fixes #172
2014-09-10 08:39:39 -07:00
Soonho Kong
8fd938e142
fix(util/lean_path.cpp): get_exe_location follows symbolic link in OSX
...
Previously, we had different behaviors on Linux and OSX when
get_exe_location finds a location of executable:
- Linux: follow symbolic link
- OSX: not follow symbolic link
2014-09-10 07:41:14 -07:00
Leonardo de Moura
570879b55f
feat(frontends/lean): add declaration to namespace without opening it, closes #161
2014-09-09 18:02:14 -07:00
Leonardo de Moura
e856a268a2
fix(frontends/lean): OVERLOAD info for overloaded notation, fixes #132
2014-09-09 17:44:19 -07:00
Leonardo de Moura
c92a9b8808
fix(frontends/lean/class): take whnf into account in add_instance
2014-09-09 16:09:05 -07:00
Leonardo de Moura
38058450d4
fix(frontends/lean/elaborator): whnf may produce assertion violation if term contains free variables
2014-09-09 16:09:05 -07:00
Soonho Kong
27fa0d0ae3
doc(emacs/README.md): update required/optional packages
2014-09-09 15:11:58 -07:00
Soonho Kong
60d14b50ab
feat(emacs/lean-require): check lean-mode dependencies in initialization
...
Close #91
2014-09-09 15:11:57 -07:00
Soonho Kong
961dccf279
feat(emacs/Cask): add Cask file
...
Close #92
2014-09-09 15:11:57 -07:00
Leonardo de Moura
47e02342bb
feat(frontends/lean/elaborator): use whnf in class-instance resolution, closes #160
2014-09-09 15:04:44 -07:00
Leonardo de Moura
bd1bc336fb
feat(library/coercion): add simple trick for defining coercions to function-class in a convenient way, closes #31
2014-09-09 14:36:36 -07:00
Leonardo de Moura
abdd784729
feat(shell): start 'lean --server' with 'pp.beta = true'
2014-09-09 14:13:35 -07:00
Leonardo de Moura
2d94584816
feat(frontends/lean/pp): add 'pp.beta' option, closes #154
2014-09-09 14:10:20 -07:00
Leonardo de Moura
65000fa653
feat(library/coercion): rename class to 'coercions'
2014-09-09 14:03:45 -07:00
Soonho Kong
ba6dc59d5f
fix(emacs/lean-server): missing 'rx' at the beginning of regex
2014-09-09 13:47:09 -07:00
Soonho Kong
70dcc2e122
fix(emacs): use looking-at instead of char-after
2014-09-09 13:22:58 -07:00
Soonho Kong
85bd112a37
fix(emacs/lean-company): color problem when showing auto-complete candidates
2014-09-09 13:22:58 -07:00
Soonho Kong
c26f39b86e
feat(emacs/lean-company): "c-u TAB" asks filter for FINDG
2014-09-09 13:22:58 -07:00
Leonardo de Moura
ee196bbf1a
fix(frontends/lean/pp): pretty printing coercions to functions, fixes #151
2014-09-09 12:49:32 -07:00
Leonardo de Moura
d8caa294b5
fix(frontends/lean/parser): configuration options defined in a context are transient, fixes #162
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-09 11:02:54 -07:00
Leonardo de Moura
0505be2aca
feat(frontends/lean/server): unifier maximum number of steps error in FINDG, closes #155
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-09 10:36:41 -07:00
Leonardo de Moura
53292d8297
feat(frontends/lean/server): add timebound to WAIT command, closes #156
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-09 10:28:47 -07:00
Leonardo de Moura
187661aa6a
feat(library/unifier): consider whnf case-split on flex-rigid constraints whenever the rhs contains a local constant that is not in the lhs
2014-09-09 09:27:26 -07:00
Leonardo de Moura
a5698a55ec
fix(library/unifier): catch type error when checking is_def_eq of type incorrect expressions
2014-09-09 09:27:26 -07:00
Leonardo de Moura
fd85d4702e
refactor(library/unifier): move all_local outside of the class
2014-09-09 09:27:26 -07:00
Leonardo de Moura
ebde1bcfad
feat(library/unifier): option 'unifier.computation true' will force elaborator to always consider an extra case-split when the right-hand-side of a flex-rigid constraint is not in weak-head-normal-form
2014-09-09 09:27:26 -07:00
Leonardo de Moura
d9afb3ca96
fix(frontends/lean/elaborator): missing constraint
2014-09-09 09:27:26 -07:00
Leonardo de Moura
4088cdc139
chore(frontend/lean/pp_options): use consistent name convention for pp option names
2014-09-09 09:27:26 -07:00
Soonho Kong
b460c02017
feat(emacs/lean-mode): add imenu support
...
Close #97
2014-09-09 09:04:31 -07:00
Soonho Kong
4eb8a9b192
feat(emacs/lean-flycheck): "real" .clean file instead of "flycheck_real.clean"
...
Fix #140
2014-09-08 23:49:02 -07:00
Soonho Kong
a9be084b1c
feat(emacs/lean-settings): add lean-flycheck-pp-width and lean-flycheck-max-messages-to-display
2014-09-08 18:44:22 -07:00
Soonho Kong
3682ca32d2
feat(emacs/lean-company): call FINDG if cursor is at "_"
2014-09-08 16:04:20 -07:00
Soonho Kong
4f604544c4
feat(emacs/lean-cmd): add WAIT command
2014-09-08 16:04:19 -07:00
Soonho Kong
c88bfc0c02
chore(frontends/lean/server.cpp): add BEGIN/END for WAIT command
2014-09-08 16:04:19 -07:00
Soonho Kong
bc640510aa
feat(emacs/lean-cmd): add FINDG cmd
2014-09-08 16:04:19 -07:00
Soonho Kong
0ac1ec1de3
feat(emacs/lean-settings): add lean-show-only-type-in-parens
...
Fix #135
2014-09-08 11:39:40 -07:00
Soonho Kong
a40894a712
fix(emacs/lean-tags): pass lean-flycheck-checker-options properly
...
Fix #153
2014-09-08 11:27:04 -07:00
Soonho Kong
c365f6b9ab
fix(emacs/lean-company): only activate auto-completion when TAB is pressed
2014-09-08 10:52:22 -07:00
Soonho Kong
6c483467dd
feat(emacs/lean-company): replace ?M in AC candidate with M and colorize
...
close #149
2014-09-08 09:47:51 -07:00
Leonardo de Moura
11addbb594
fix(frontend/lean/server): auto completion doesn't use prefix, fixes #147
2014-09-08 08:04:04 -07:00
Leonardo de Moura
b4793df653
feat(frontends/lean): rename '[fact]' to '[visible]'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-08 07:47:42 -07:00
Leonardo de Moura
cbdfb0dcdc
feat(frontends/lean/elaborator): (Pi/forall) intro in class inference, closes #77
2014-09-07 19:59:34 -07:00
Leonardo de Moura
2631979f5c
fix(library/scoped_ext): section/context should not affect namespace
2014-09-07 19:59:34 -07:00
Soonho Kong
5c89e70a23
fix(emacs/lean-server): use process-query-on-exit-flag to kill
...
lean-server automatically on exit
To fix a problem mentioned in #147
2014-09-07 22:29:09 -04:00
Leonardo de Moura
da701eb6de
fix(frontends/lean/elaborator): bug in recent change
2014-09-07 19:08:31 -07:00
Soonho Kong
fc2fbc41bb
chore(emacs/lean-info): fix a bug passing a wrong argument
2014-09-07 18:44:11 -07:00
Leonardo de Moura
fea516af24
feat(frontends/lean/elaborator): allow Pi/forall local instances
2014-09-07 18:16:33 -07:00
Leonardo de Moura
c378a58cc2
feat(frontends/lean): add [class] modifier for inductive datatypes as a shortcut for 'class' command.
2014-09-07 18:16:33 -07:00
Soonho Kong
ba35ca5300
feat(emacs/lean-company): add company-lean--need-autocomplete
...
This one partially addresses #150 .
2014-09-07 17:32:06 -07:00
Leonardo de Moura
3310eb3dfc
feat(frontends/lean): remove restriction on implict arguments, add new test that demonstrates the new feature
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-07 12:29:32 -07:00
Soonho Kong
6b5e67e063
fix(emacs/lean-info): fix eldoc-error at end of buffer
2014-09-07 11:40:28 -07:00
Leonardo de Moura
6d2df80a17
feat(frontends/lean/server): use '?a' instead of '?M_i' for implicit arguments when displaying FINDP and FINDG matches
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-07 09:36:03 -07:00
Leonardo de Moura
1bc31d7df0
feat(frontends/lean/server): instantiate implicit arguments with metavariables when generating FINDP and FINDG output
2014-09-06 13:17:26 -07:00
Leonardo de Moura
87d7391d7a
fix(frontends/lean/server): do not fail if file does not exist in 'VISIT file'
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-06 12:34:20 -07:00
Leonardo de Moura
5549295c47
fix(frontends/lean/inductive_cmd): bug when elaborating inductive tyoe parameters
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-06 11:38:32 -07:00
Leonardo de Moura
bbff564a1c
feat(frontends/lean): persistent notation in sections
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-06 11:14:20 -07:00
Leonardo de Moura
d6491399b9
fix(emacs/lean-syntax): weird syntax-hightlight problem"
2014-09-06 10:49:16 -07:00
Soonho Kong
6b5831d894
feat(emacs/lean-info): show extra-type info for expr in parens
...
Close #135
2014-09-06 09:26:11 -07:00
Soonho Kong
d793b09c0f
feat(emacs/lean-cmd): extend info to have column-number
2014-09-06 09:26:11 -07:00
Leonardo de Moura
3bbbd43b03
chore(emacs): minor adjustments to synthax hightlight and input mode
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-06 08:32:05 -07:00
Soonho Kong
303b86e165
refactor(emacs/lean-flycheck): clean up unused code
2014-09-05 23:08:19 -07:00
Soonho Kong
0476591992
fix(emacs/lean-company): override company--window-width
...
Override 'company--window-width' to be 0.95 * window-body-width.
This partially solves the problem of issue #137 .
2014-09-05 23:08:19 -07:00
Soonho Kong
bd17d07ebc
fix(emacs/lean-server): limit the number of NAY retries
...
Also, only retry when there is no continuation other than the current
one.
2014-09-05 23:08:19 -07:00
Leonardo de Moura
bdb91f6783
feat(frontends/lean/server): give preference to prefix matches
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 21:57:35 -07:00
Leonardo de Moura
629feb77ef
feat(frontends/lean/server): ingore keywords and commands in FINDP
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 20:59:14 -07:00
Leonardo de Moura
b5f595c432
fix(frontends/lean/inductive_cmd): bugs when declarating inductive datatypes in sections, fixes #141 , fixes #142
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 19:17:09 -07:00
Soonho Kong
e4a687c5ea
fix(emacs/lean-tags): use the same linja option for tags-gen and flycheck
2014-09-05 19:11:49 -07:00
Leonardo de Moura
8610330cc4
chore(emacs/lean-syntax): highlight 'import/section/end/namespace/open' arguments
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 18:38:41 -07:00
Leonardo de Moura
d48dbccb00
fix(shell): allow multiple spaces after -D option
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 18:07:54 -07:00
Leonardo de Moura
a8361f128f
feat(frontends/lean/server): sort fuzzy matches by number of errors
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 18:03:04 -07:00
Leonardo de Moura
f1436d78ca
feat(frontends/lean/server): using fuzzy matching
2014-09-05 18:01:18 -07:00
Leonardo de Moura
a31a25798c
feat(util): add fuzzy string search procedure
2014-09-05 18:01:09 -07:00
Soonho Kong
f958e534bd
feat(emacs/lean-settings): pass 'pp.width' to lean via linja
...
Close #28
2014-09-05 16:35:01 -07:00
Soonho Kong
50f16ad591
feat(emacs/lean-flycheck): delete flycheck temporaries after check
...
Close #140
2014-09-05 16:09:45 -07:00
Soonho Kong
a1e00bb216
refactor(emacs/lean-server): restructure async queue handling routine
2014-09-05 16:09:45 -07:00
Soonho Kong
a72df90022
feat(emacs/lean-server): add debug-mode, trace-mode
2014-09-05 15:33:59 -07:00
Soonho Kong
70ac5ec15e
feat(emacs/README.md): add instruction for unicode font
2014-09-05 15:33:59 -07:00
Soonho Kong
e77966932d
feat(emacs/lean-server): scroll debug buffer
2014-09-05 15:33:59 -07:00
Soonho Kong
db60a56056
feat(emacs/lean-company): truncate string if it's longer than 90% of window-width
...
Also add "..." in the end
Close #137
2014-09-05 08:49:05 -07:00
Soonho Kong
3b574ef31d
feat(emacs/lean-server): kill the server before emacs exit
...
Close #138
2014-09-05 07:49:19 -07:00
Soonho Kong
37e514e114
feat(emacs/lean-tags): block emacs until ltags finishes
2014-09-05 06:59:02 -07:00
Soonho Kong
fc364566bf
feat(emacs/lean-company): truncate type info in auto-complete
...
Close #137
2014-09-05 06:59:02 -07:00
Soonho Kong
64bae94d3a
fix(emacs/lean-company): enable auto-complete if prefix has '.' or '_'
2014-09-05 06:59:02 -07:00
Soonho Kong
3ba4e553fe
refactor(emacs/lean-server): clean up
2014-09-05 06:59:01 -07:00
Leonardo de Moura
898021c1b8
fix(frontends/lean/server): cleanup info in modified line
2014-09-05 01:36:17 -07:00
Leonardo de Moura
613c035ff8
fix(frontends/lean): missing pre_info for type incorrect declarations
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 01:12:08 -07:00
Leonardo de Moura
5fa1c0a5fb
feat(frontends/lean/server): take current namespace into account when processing FINDP command
...
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2014-09-05 00:40:34 -07:00