Try agda on this file
module TermHO where data List (A : Set) : Set where [] : List A _::_ : A -> List A -> List A data Rose (A : Set) : Set where Rose : List (Rose A) -> Rose A -- the bug disappears if we name the constructor "rose" instead map : forall {A B} -> (A -> B) -> List A -> List B map f [] = [] map f (a :: as) = f a :: map f as roseMap : forall {A B} -> (A -> B) -> Rose A -> Rose B roseMap f (Rose l) = map (roseMap f) l
Then try again, replacing constructor Rose
by rose
(leave the data type name unchanged).
Notes
- This bug is somewhat related to 20070530-2 in that the problem is that declarations are allowed to shadow each other in a bad way.
- The silent exiting is an __IMPOSSIBLE__ which for some reason isn't printed.
- Fixed.
Page last modified on June 04, 2007, at 09:44 am
Powered by
PmWiki