Commit graph

17 commits

Author SHA1 Message Date
Evan Czaplicki
6c1d2d7bf3 cosmetic: generalize collectLambdas to make a list of types, move prettifying code to the Pretty instance 2014-01-14 12:48:54 +01:00
Evan Czaplicki
2a0a0e6e3c Simplify SourceSyntax.Type AST, making record extension more restrictive as discussed with @maxsnew 2014-01-13 11:01:10 +01:00
Evan Czaplicki
270dbf8722 Add -Wall to a bunch of SourceSyntax files and get them warning free 2014-01-04 10:14:36 +01:00
Evan Czaplicki
7b20993869 Get rid of dependency on uniplate so AST does not need to derive Data or Typeable
This is motivated by wanting to add things to the AST that cannot
derive Data or Typeable
2013-12-20 16:41:06 -08:00
Michael Sondergaard
a0cbe84f1d Throw an error when deserializing a bad type
This error should never be encountered, as long as we always update the get
function when the put function is, as required by get . put == id.
2013-11-04 20:32:53 +01:00
Evan Czaplicki
11294300fc Prettier printing for list types 2013-08-21 19:44:57 -07:00
Evan Czaplicki
a7b0d3fa15 Make nested record types prettier. 2013-08-20 01:13:37 -07:00
Evan Czaplicki
576e979483 Simplify code to generate record constraints 2013-07-27 00:14:38 +02:00
Evan Czaplicki
760ad905cf Add record constructors, begin using lists to represent fields in record types to maintain ordering from the source program 2013-07-26 18:20:57 +02:00
Evan Czaplicki
d9c1317a25 Add pretty printing for record types 2013-07-25 17:09:10 +02:00
Evan Czaplicki
eaa751d987 Make pretty printing for types prettier 2013-07-22 14:52:57 +02:00
Evan Czaplicki
22f7f8a43a Create a serializable interface for a module's type information
Also add a flag to print out top-level types
2013-07-21 06:08:08 +02:00
Evan Czaplicki
c942afea6a Nicer pretty printing and a special variable to "Save the Environment" 2013-07-19 17:45:16 +02:00
Evan Czaplicki
1d1083600f Fix naming bug for List type 2013-07-17 19:24:56 +02:00
Evan Czaplicki
93a948cd67 Add back in checks for duplicate and out-of-order definitions. 2013-07-15 01:06:00 +02:00
Evan Czaplicki
0070a844d0 Switch the internal data constructor name for tuples. Before tuple
constructors could be shadowed by user defined ADT's such as "Tuple0",
"Tuple2", etc. Now it uses "_Tuple0" to make it impossible to overlap
with user defined ASTs.
2013-07-14 19:52:50 +02:00
Evan Czaplicki
e4ca96731d Create a source syntax for types that will get converted into the internal type representation during type checking. 2013-07-07 18:13:40 +02:00