diff src/laconic.sml @ 1:4202f6eda946

Initial parsing and pretty-printing
author Adam Chlipala <adamc@hcoop.net>
date Sat, 26 Jan 2008 12:35:32 -0500
parents 502c6d622477
children
line wrap: on
line diff
--- a/src/laconic.sml	Sat Jan 26 10:06:22 2008 -0500
+++ b/src/laconic.sml	Sat Jan 26 12:35:32 2008 -0500
@@ -37,23 +37,33 @@
 
 withtype kind = kind' located
 
+datatype explicitness =
+         Explicit
+       | Implicit
+
 datatype con' =
          CAnnot of con * kind
 
        | TFun of con * con
-       | TCFun of bool * string option * kind * con
+       | TCFun of explicitness * string * kind * con
        | TRecord of con
 
-       | CFvar of string
-       | CBvar of int
+       | CVar of string
        | CApp of con * con
-       | CAbs of string * kind * con
+       | CAbs of explicitness * string * kind * con
 
        | CName of string
 
-       | CRecord of (string * con) list
+       | CRecord of (con * con) list
        | CConcat of con * con
 
 withtype con = con' located
 
+datatype decl' =
+         DCon of string * kind option * con
+
+withtype decl = decl' located
+
+type file = decl list
+
 end