view demo/list.urs @ 1675:13dad713da35

New, more principled heuristic for Especialize: only specialize uniform function arguments; that is, arguments that don't change across recursive calls
author Adam Chlipala <adam@chlipala.net>
date Wed, 11 Jan 2012 13:53:35 -0500
parents 4d519baf357c
children
line wrap: on
line source
datatype list t = Nil | Cons of t * list t

val length : t ::: Type -> list t -> int

val rev : t ::: Type -> list t -> list t