view tests/concat.ur @ 1505:8c851e5508a7

Tutorial: up to First-Class Polymorphism
author Adam Chlipala <adam@chlipala.net>
date Sun, 17 Jul 2011 11:00:04 -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)