Iavor S. Diatchki
65ebbb5956
Extend core linter with support for parameterized modules.
2017-10-26 14:20:29 -07:00
Iavor S. Diatchki
26240742a4
Pretty print when panicing, makes it easier to see
2017-10-26 11:50:48 -07:00
Iavor S. Diatchki
8627945ade
Fix up transformation
2017-10-26 11:50:36 -07:00
Iavor Diatchki
1f86f4c3b3
Some examples.
2017-10-25 17:00:23 -07:00
Iavor Diatchki
b87f387d38
Add param in the correct place, but there's still something wrong.
2017-10-25 17:00:11 -07:00
Iavor Diatchki
3f4cc570cf
Use a record for all module parameters at the value level. Also improve PP
2017-10-25 16:39:29 -07:00
Iavor Diatchki
5c51d32a4e
Fix up html syntax highlighting.
2017-10-25 11:12:37 -07:00
Iavor Diatchki
c666731495
Print help for type parameters.
2017-10-24 16:12:12 -07:00
Iavor Diatchki
6056eaad4b
Use proper types for module parameters; allows for stroing metadata
...
For example, documentaiton.
2017-10-24 15:43:32 -07:00
Iavor Diatchki
dbaf7b21bf
Merge remote-tracking branch 'origin/master' into abstract-types
2017-10-24 14:05:16 -07:00
Iavor Diatchki
9ecc8f720d
Add some tests.
2017-10-24 14:04:41 -07:00
Iavor Diatchki
2f53602749
We need to instantiate constraints, not parameterize them!
2017-10-24 14:04:30 -07:00
Iavor Diatchki
e2d74066d8
Only load by module name, if we have a special module name.
...
Otherwise, scripts tend to fail to reload, as they have no module name,
which defaults to `Main`, but the file name is called something else.
2017-10-24 13:46:48 -07:00
Iavor Diatchki
fd0e6258fc
More fixes to rewriting code.
2017-10-24 13:41:37 -07:00
Iavor Diatchki
2de8eff416
Fix up translation, to change the type of name to Parameter
2017-10-24 11:59:59 -07:00
Iavor Diatchki
07c5e1fcb8
Bump language standard to 2010. We're beyond '98 anyway...
2017-10-24 11:59:34 -07:00
Iavor Diatchki
c2ca8f30a7
Fix displaying of parameters.
2017-10-24 11:44:44 -07:00
Iavor Diatchki
8472cfb0db
Fix editing and reloading for generated modules.
2017-10-24 11:16:13 -07:00
Iavor Diatchki
4c9d25bf39
Fix up browsing for module with added params.
2017-10-24 11:09:57 -07:00
Iavor Diatchki
ca6b34f621
Refactor module system things; better loading of `A modules.
2017-10-23 15:12:12 -07:00
Iavor Diatchki
98e8a4b308
Fix the benchmarking code.
2017-10-23 10:14:17 -07:00
Iavor Diatchki
05e3a84cd1
Plug in adding parameters to each definition. XXX: fix repl :m :load
2017-10-20 16:33:02 -07:00
Iavor Diatchki
d52c5f5938
Merge remote-tracking branch 'origin/master' into abstract-types
...
# Conflicts:
# src/Cryptol/Parser/ParserUtils.hs
2017-10-20 14:07:47 -07:00
Iavor Diatchki
1e17bd03cf
Make parser use strict text (XXX: does this affect performance +ve or -ve)
...
Also makes module names into their own newtype
2017-10-20 12:00:00 -07:00
Brian Huffman
8db89ab3ee
Add test case for issue #474 .
2017-10-20 11:09:51 -07:00
Brian Huffman
e3ea9335c8
Put correct VWord width tag on result of symbolic index operation.
...
Fixes #474 .
Previously, applying (@) at type `[a][b] -> [i] -> [b]` would tag the
result value as having width `a` instead of width `b`. This is now fixed.
2017-10-20 11:09:32 -07:00
Iavor S. Diatchki
300383772f
Just a clarification
2017-10-19 15:17:39 -07:00
Iavor S. Diatchki
095a7718d9
Add a pass to rewrite a param. module, into a non-param module
...
All definitions are parameterized by all parameters.
2017-10-19 13:45:40 -07:00
Iavor Diatchki
b8780ab68f
Add some tests.
2017-10-18 14:33:41 -07:00
Iavor Diatchki
c3d8b4b3f8
Allow focusing of parameterized modules; disable evaluation in such contexts.
2017-10-18 14:33:12 -07:00
Iavor Diatchki
432638a77a
Allow a value parameter to be defined by another value parameter.
2017-10-18 13:36:37 -07:00
Iavor Diatchki
1cbbba7c32
More functionality
2017-10-17 16:26:05 -07:00
Iavor Diatchki
dda54aa016
More progress
2017-10-16 15:54:42 -07:00
Iavor Diatchki
acacd0b53d
Merge remote-tracking branch 'origin/master' into abstract-types
...
# Conflicts:
# src/Cryptol/TypeCheck/Monad.hs
2017-10-16 14:25:08 -07:00
Iavor Diatchki
942173b7f9
Add comments and fixes #473
2017-10-16 14:09:52 -07:00
Iavor Diatchki
a85ff3a54b
Add comments
2017-10-16 14:05:46 -07:00
Iavor Diatchki
6ba8849216
Just reformat
2017-10-16 14:05:31 -07:00
Iavor Diatchki
043334f8f9
Name is cryptol
nowadays
2017-10-16 14:05:17 -07:00
Iavor Diatchki
ec456b9447
Fix typo
2017-10-16 14:05:01 -07:00
Iavor S. Diatchki
15f236d42b
More loading of instances (incomplete)
2017-10-13 15:27:42 -07:00
Iavor S. Diatchki
2b21610796
Better integration of module parameters with module system and REPL
2017-10-13 11:35:46 -07:00
Iavor S. Diatchki
7dc7be45bb
Merge remote-tracking branch 'origin/master' into abstract-types
...
# Conflicts:
# src/Cryptol/REPL/Monad.hs
2017-10-13 10:45:35 -07:00
Iavor S. Diatchki
3f2ac1171c
Comments
2017-10-13 10:40:24 -07:00
Iavor Diatchki
51808bbf23
More comments
2017-10-06 16:24:10 -07:00
Iavor Diatchki
f71b951108
Some documentation.
2017-10-06 15:57:45 -07:00
Aaron Tomb
ef09fde6e5
Fix Travis for real now
2017-10-06 14:44:11 -07:00
Aaron Tomb
3134acbb7d
Better section names for Travis
2017-10-06 14:35:58 -07:00
Aaron Tomb
1cb7d4dcaa
Use cabal new-build
on AppVeyor
2017-10-06 14:19:01 -07:00
Aaron Tomb
39766c1b2e
Use cabal new-build
on Travis
2017-10-06 14:17:35 -07:00
Iavor Diatchki
b5ef48dcd7
Fix-up the benchmarking code.
2017-10-06 11:55:48 -07:00