Commit Graph

6437 Commits

Author SHA1 Message Date
David Raymond Christiansen
c48561f5a5 Better approximation of syntax rule errors
External syntax is now properly used in error locations. Processing of
highlighting and non-highlighting FCs has been separated.
2015-06-18 22:52:26 +02:00
David Raymond Christiansen
e9e7993e47 Replace absurd syntax rule FCs
Previously, FCs coming from syntax rules would keep the FCs of their
definition context. Now, after expanding a syntax rule, the FCs that
aren't contained in the region in which the syntax was expanded are
replaced by a reference to the present file.

This does not give a precise source location - that runs the risk of
generating false highlighting information - but this solution at least
places the error in the right file, and the "While elaborating ..." bit
can be used to find the error. We should probably get better at
separating the highlighting-relevant FCs from the
highlighting-irrelevant FCs in the future.
2015-06-18 22:27:46 +02:00
David Raymond Christiansen
3be8229b03 Stop overwriting case block pattern highlights
This prevents case blocks from getting their pattern clauses overwritten
by the name of the internal auxiliary function
2015-06-18 20:23:56 +02:00
David Raymond Christiansen
823be86990 Highlight postulates and their definitions 2015-06-18 20:13:03 +02:00
David Raymond Christiansen
840f5886f3 Preserve manual name type annotations
This lets highlighting code override the global state highlighting, for
example when emitting highlight information for something that's not yet
in the global state.
2015-06-18 20:12:06 +02:00
David Raymond Christiansen
5f9f8b19ca Fix implicit arg / function highlights
Before, sometimes implicit args were given the FC of their function
application. This caused them to sometimes overwrite the highlighting
information from their function when in a pattern position.
2015-06-18 18:54:47 +02:00
David Christiansen
6d7da92618 Merge pull request #2378 from david-christiansen/wip/tactical
Latest Elab reflection updates
2015-06-15 23:01:23 +02:00
David Raymond Christiansen
ff603967cc Make apply match internal behaviour
The second argument to apply is no longer ignored. This means that we
can now make use of Idris's features for solving implicits.
2015-06-15 19:34:09 +02:00
David Christiansen
ecab24154c Merge pull request #2375 from jfdm/fix/logging
Logging levels must be explicitly mentioned.
2015-06-15 10:04:58 +02:00
David Raymond Christiansen
6df52fa9cd Merge remote-tracking branch 'refs/remotes/upstream/master' into wip/tactical 2015-06-15 09:59:51 +02:00
Edwin Brady
a21064e77e Add Effect.Monad and Effect.Trans
These allow Eff programs to be used in monad transformer stacks, either
by wrapping them in MonadEff (which is a monad wrapping programs with
unchanging effects) or by using the TRANS effect to allow lifting of
programs in some inner monad.
2015-06-14 13:54:14 +01:00
Edwin Brady
f224681a7c Update FAQ
Differences with Agda question was somewhat out of date.
2015-06-14 12:04:58 +01:00
Edwin Brady
66870b2039 Export 'lift' from Control.Monad.State 2015-06-14 12:04:58 +01:00
Jan de Muijnck-Hughes
202c913366 Logging levels must be explicitly mentioned.
Removed `iLOG`, all logging levels must be now explicitly declared when logging.
2015-06-14 10:34:47 +01:00
David Christiansen
078574ac3f Merge pull request #2374 from astr0labe/master
Fixed minor inconsistency in function definitions for dependent types example
2015-06-13 21:06:59 +02:00
David Christiansen
df8f605cc8 Merge pull request #2373 from GuglielmoS/fix/master/doc_should_show_totality_status
Fix #2176 by adding totality status to the REPL :doc command output
2015-06-13 21:05:57 +02:00
Thomas Cooper
effdfc32f0 Merge pull request #1 from astr0labe/astr0labe-patch-1
Fixed minor inconsistency in function definitions for dependent types example
2015-06-13 17:52:55 +01:00
Thomas Cooper
36f37df7ff Fixed minor inconsistency in function definitions 2015-06-13 17:48:42 +01:00
Guglielmo Fachini
164c4f6a27 Update REPL :doc related tests with totality status 2015-06-13 16:10:25 +02:00
Guglielmo Fachini
0922ca11a8 Fix #2176 by adding totality status to the REPL :doc command output
*) pprintFD receives a boolean argument that allows to show the totality
   status when needed
*) pprintFDWithoutTotality behaves as the old pprintFD
*) pprintFDWithTotality behaves as the old pprintFD and add a new line
   with the totality status of the given function
*) the totality status is not considered for data types (and their constructors)
   and type classes (and their instance constructors and named instances)
2015-06-13 15:57:26 +02:00
David Raymond Christiansen
a440a74717 Merge remote-tracking branch 'refs/remotes/upstream/master' into wip/tactical 2015-06-12 16:30:04 +02:00
David Christiansen
e6385fe3b4 Merge pull request #2368 from Melvar/more-showPrec
Fix up a couple Show instances I missed when converting
2015-06-12 16:20:41 +02:00
David Raymond Christiansen
6cd99f3f32 Merge remote-tracking branch 'refs/remotes/origin/wip/tactical' into wip/tactical 2015-06-12 16:12:11 +02:00
David Raymond Christiansen
0510928ef1 Remove erasure check for Placeholder
This is to prevent {x:_} -> ... from showing up as dotted.
2015-06-12 16:11:23 +02:00
David Raymond Christiansen
39f210b2f9 Merge remote-tracking branch 'refs/remotes/upstream/master' into wip/tactical 2015-06-12 16:11:01 +02:00
Melvar Chen
aee82ee894 Fix up a couple Show instances I missed when converting 2015-06-12 14:32:58 +02:00
David Christiansen
f96ccde7a3 Merge pull request #2367 from david-christiansen/wip/tactical
Elab reflection progress
2015-06-12 14:25:33 +02:00
David Raymond Christiansen
b2dc1fc720 Add missing reflection constructor 2015-06-11 15:25:08 +02:00
David Raymond Christiansen
d2beadc7d5 7.10 compatibility 2015-06-11 10:01:27 +02:00
David Raymond Christiansen
63806e5eef Mark free implicits as dotted
This makes it easier to use that knowledge later.
2015-06-10 16:52:44 +02:00
David Raymond Christiansen
6783ecc5ab Update test for erasure knowledge 2015-06-10 16:52:34 +02:00
David Raymond Christiansen
fbbe433c63 Rename function to better reflect purpose 2015-06-10 15:05:04 +02:00
David Raymond Christiansen
124074a6f2 Add erasure info to Elab reflection 2015-06-10 14:38:30 +02:00
David Raymond Christiansen
fc57624070 Allow Elab scripts to create new metavariables
This is mainly to allow debugging and development using the interactive
Elab shell.
2015-06-10 09:46:15 +02:00
David Christiansen
8ed600091f Merge pull request #2358 from david-christiansen/wip/tactical
Catch up on Elab
2015-06-09 19:24:39 +02:00
David Raymond Christiansen
42025b06bf Add pretty printer for %runElab 2015-06-09 17:51:37 +02:00
David Raymond Christiansen
4ad8431820 Add Elab shell to CHANGELOG 2015-06-09 17:23:39 +02:00
David Raymond Christiansen
54cd5a62fe An interactive Elab shell
This mirrors the interactive prover, but it uses Elab tactics instead of
the old built-in tactic language.
2015-06-09 17:20:32 +02:00
David Raymond Christiansen
6bf22eea57 Merge remote-tracking branch 'refs/remotes/upstream/master' into wip/tactical 2015-06-09 09:37:11 +02:00
David Christiansen
101f5f935c Merge pull request #2355 from david-christiansen/interactive-fix
Interactive fix
2015-06-08 19:20:12 +02:00
David Christiansen
705c36b5bc Merge pull request #2348 from ISANobody/master
Add a DecEq instance for HVect
2015-06-08 17:11:24 +02:00
David Raymond Christiansen
34f516d570 Canonicalize paths in internalapp
Otherwise, equal pathnames would not show up as equal, leading to
problems in interactive editing if Idris's notion of a relative path
didn't agree with the user's notion. For example, loading a file as
"Foo/Bar.idr" would break interactive editing, because Idris would
remember the name as "./Foo/Bar.idr".
2015-06-08 16:56:58 +02:00
David Raymond Christiansen
d03295d652 Print directory properly 2015-06-08 16:09:06 +02:00
Edwin Brady
3bee81e850 Add error handler for Num class 2015-06-08 13:57:45 +01:00
David Raymond Christiansen
207ab7fc55 Merge remote-tracking branch 'refs/remotes/origin/wip/tactical' into wip/tactical 2015-06-08 14:41:10 +02:00
Edwin Brady
89c19be300 Better error message for cast failure 2015-06-07 19:05:12 +01:00
Edwin Brady
c88215445e Fix DeepSeq matching 2015-06-07 16:42:47 +01:00
David Raymond Christiansen
9056a4a1fe Merge remote-tracking branch 'refs/remotes/upstream/master' into wip/tactical 2015-06-07 13:28:36 +02:00
Edwin Brady
76b39b1b74 Fix pattern warning in DeepSeq 2015-06-07 10:26:52 +01:00
Edwin Brady
bfacfbc85e Better partial evaluation of polymorphic HOFs
Need to make sure types constructors are stripped on the LHS or they
won't get past the elaborator.
2015-06-06 12:04:48 +01:00