Mercurial > urweb
annotate tests/open_functor.ur @ 1431:4a6f84092399
Represent 'unit' as C 'int'; change pattern match compilation to avoid 'goto'; change Postgres prepared statement compilation to make life easier for the GCC escape analysis; all this in support of better tail call optimization
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Thu, 10 Mar 2011 18:51:15 -0500 |
parents | 71bafe66dbe1 |
children |
rev | line source |
---|---|
adamc@146 | 1 signature S = sig |
adamc@146 | 2 type t |
adamc@146 | 3 val x : t |
adamc@146 | 4 end |
adamc@146 | 5 |
adamc@146 | 6 functor F (M : S) : S where type t = M.t = struct |
adamc@146 | 7 type t = M.t |
adamc@146 | 8 val x = M.x |
adamc@146 | 9 end |
adamc@146 | 10 |
adamc@146 | 11 structure M = F(struct |
adamc@146 | 12 type t = int |
adamc@146 | 13 val x = 0 |
adamc@146 | 14 end) |
adamc@146 | 15 |
adamc@146 | 16 open M |