view tests/concat.ur @ 1513:5616b2cbdcdb

Tutorial: hyperlinks for metaprogramming and row types
author Adam Chlipala <adam@chlipala.net>
date Wed, 20 Jul 2011 08:14:49 -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)