Commit Graph

810 Commits

Author SHA1 Message Date
Trevor Elliott
3a39b271da Smarter merging of naming environments
When merging two entries that are the same, don't duplicate the binding on the
RHS of the map.
2015-09-27 19:42:15 -05:00
Trevor Elliott
0541e80a98 Add a way to print names with their location info 2015-09-27 19:40:36 -05:00
Trevor Elliott
5cb9280530 Fix a display bug in the :help command
Don't try to figure out when parens are needed on operators
2015-09-27 19:39:33 -05:00
Trevor Elliott
8bcefbe4dd Don't produce warnings when shadowing in the dynamic env 2015-09-27 19:39:06 -05:00
Trevor Elliott
a7b7e25c0f Remove some dead code 2015-09-27 19:38:41 -05:00
Trevor Elliott
694a1ed92d Fix some bugs with the dynamic env
Shadowing wasn't working correctly, as names were being added to the dynamic
naming environment in multiple places.
2015-09-27 18:55:48 -05:00
Trevor Elliott
bc5759f867 Try to have make test rebuild cryptol less frequently 2015-09-27 18:02:26 -05:00
Trevor Elliott
06b5156b17 Compare two names based on how they would display 2015-09-27 18:02:02 -05:00
Trevor Elliott
454270165f Case analysis wibbles 2015-09-27 18:01:24 -05:00
Trevor Elliott
8f7e76b714 mkTInfix was rewriting too much
`max 1 (a + b) - 1` was rewriting to `max 1 (a + b - 1)`, as mkTInfix was
considering the use of max to be an infix operator. The fix was to make it only
perform this way when the thing in the position of `max` was one of the
un-renamed infix constraints (==,>=,<=).
2015-09-27 18:01:09 -05:00
Trevor Elliott
89aaa72e0b Start fixing failing tests 2015-09-27 14:35:24 -05:00
Trevor Elliott
c855463fd9 Warning removal 2015-09-26 13:15:10 -05:00
Trevor Elliott
4839de6048 Makefile fix
Something wasn't happening correctly with the PKG target, so I altered it to
run everything in one shell.
2015-09-26 13:15:00 -05:00
Trevor Elliott
9e36f05f4b Merge remote-tracking branch 'origin/master' into wip/name-change 2015-09-26 01:26:23 -05:00
Trevor Elliott
23f520c810 NameMap wasn't actually helping 2015-09-26 01:25:40 -05:00
Trevor Elliott
d9a3bb1de7 Prelude loads again 2015-09-25 16:04:07 -05:00
Trevor Elliott
a133ea0f67 Fixed some renamer problems 2015-09-25 15:02:43 -05:00
Trevor Elliott
c191aebb52 Fix some renamer/parser bugs 2015-09-24 17:32:25 -05:00
Trevor Elliott
55ae1f852d Major changes plumbed through, now for the bugs! 2015-09-24 16:47:52 -05:00
Trevor Elliott
56171c60ca Library is building again 2015-09-24 16:30:23 -05:00
Trevor Elliott
e5ab23cfe8 Lib nearly builds 2015-09-23 15:45:42 -07:00
Trevor Elliott
89324e2e95 Fold changes through the parser, and part of the typechecker 2015-09-21 20:08:06 -07:00
Trevor Elliott
2a048be438 More incremental fixes 2015-09-18 17:13:18 -07:00
Trevor Elliott
12cbdabfeb Continue plumbing new names through 2015-09-18 16:56:23 -07:00
Adam C. Foltzer
c07f97a994 update to Stackage LTS 3.5
This snapshot requires GHC 7.10+, but since we're only copying over the
Stackage config on the Jenkins machines, we're not requiring 7.10-only
just yet. The newest 7.8.4 snapshot has a too-old version of SBV,
though, so builds for earlier than 7.8 are more of a wild west.
2015-09-18 16:05:31 -07:00
Trevor Elliott
15bd25c69e Lots of changes to the renamer
The structure is mostly the same, but now it changes the type of the name
parameter to the parsed AST.
2015-09-18 15:45:43 -07:00
Trevor Elliott
88e5965e7f Parameterize parsed AST on names 2015-09-17 17:30:39 -07:00
Adam C. Foltzer
4df92455e5 update stackage snapshot 2015-09-17 14:45:51 -07:00
Jenkins Builder
75539f9244 add \protect to fix error on Windows docs 2015-09-16 13:12:37 -07:00
Adam C. Foltzer
2ca0e6f732 switch back to non-latexmk for book (Windows)
Windows didn't like the latexmk solution from
5eb5f00d0a.
2015-09-16 11:37:00 -07:00
Thomas M. DuBuisson
17abf37b7d A rough cut at SIV. 2015-09-16 09:19:27 -07:00
Adam C. Foltzer
5eb5f00d0a change how the book is built 2015-09-15 13:38:06 -07:00
Trevor Elliott
98c49b875c Slight speedup in name comparison 2015-09-14 21:50:26 -07:00
Adam C. Foltzer
28461e7b72 update attribution on SHA512 2015-09-14 17:18:47 -07:00
Thomas M. DuBuisson
7643a17182 Fix #272 Don't full blocks in ChaChaPoly8675309 2015-08-28 15:22:03 -07:00
Brian Huffman
72d8794b9d Change where integer masking is applied in the interpreter
In the Value datatype, we now maintain an invariant for
all packed bitvectors: The value must be within the range
0..2^width-1. Values are normalized when constructed, not
when they are scrutinized.
2015-08-28 13:47:17 -07:00
Aaron Tomb
44f8bcd310 Fix comment in Keccak example
Note: this is actually Cryptol 1 code. We should port it. I've started
the process, but don't have a complete port yet.
2015-08-28 09:49:29 -07:00
Adam C. Foltzer
9b6cde1f8d reexport version number 2015-08-26 11:34:16 -07:00
Trevor Elliott
ec4fb4ab54 Fix #271
The renamer wasn't expecting to see anything but (==), (>=), or (<=) show up in
a case where that wasn't a valid assumption.
2015-08-25 10:50:35 -07:00
Brian Huffman
792f8e433f Allow "-" in infix operator names 2015-08-21 11:00:46 -07:00
Adam C. Foltzer
50ca428018 add regression in #269 to benchmark suite 2015-08-20 15:49:06 -07:00
Adam C. Foltzer
3825ce84c8 update to use Text in Ident 2015-08-19 14:42:40 -07:00
Trevor Elliott
5cf2b9e47e Warning removal 2015-08-14 17:43:02 -07:00
Trevor Elliott
9092492d6a Improvement improvements
Integrate interval analysis into improvements to simplify fin constraints, and
rewriting of equality constraints.
2015-08-14 17:38:50 -07:00
Trevor Elliott
d71fd8a3ee Issue #148 is fixed now 2015-08-14 17:38:50 -07:00
Adam C. Foltzer
dce6f994e8 Merge branch 'master' into feature/benchmarks 2015-08-14 16:23:10 -07:00
Adam C. Foltzer
ab9ccb50d7 make NFData deriving 7.8-compatible 2015-08-14 14:42:38 -07:00
Trevor Elliott
a4c3892002 Finish a comment 2015-08-13 23:08:00 -07:00
Trevor Elliott
0d4a5bf5d3 Warning removal 2015-08-13 22:50:23 -07:00
Trevor Elliott
6784125cfa Add an intersection function for intervals 2015-08-13 22:49:54 -07:00