view tests/cancel.ur @ 2126:ec1614fb97bb

Change MonoReduce to do fixed-pointing, since it sometimes enables more optimizations for itself (e.g., yanking lambdas out of [case]s)
author Adam Chlipala <adam@chlipala.net>
date Fri, 06 Mar 2015 09:46:21 -0500
parents dfb38a333816
children
line wrap: on
line source
type t = {A : int, B : float, C : string}
type u = {A : int, C : string, D : bool}

fun f (x : t) = x
fun g (x : u) = f x

fun h [ts] [ts ~ [A]] (r : $([A = int] ++ ts)) : $([A = int, B = float] ++ ts) = r