view tests/concat.ur @ 1738:1a35e75b6967

Catch duplicate top-level module names; fix dropping of constraints during incremental elaboration; document treatment of record types as type class instance types
author Adam Chlipala <adam@chlipala.net>
date Thu, 03 May 2012 09:56:41 -0400
parents c7b9a33c26c8
children
line wrap: on
line source
functor Make(M : sig
                 con ts :: {(Type * Type)}
                 val tab : sql_table (map fst ts) []
                 val cols : $(map (fn p => p.2 -> string) ts)
             end) = struct
end

table t : {A : string}

open Make(struct
              val tab = t
              val cols = {A = fn p : {B : string, C : string} => p.B ^ p.C}
          end)