@@ -0,0 +1,20 @@
1+data UList : Type -> UniqueType where
3+ (::) : a -> UList a -> UList a
5+free : {a : UniqueType} -> a -> String
8+showU : Show a => Borrowed (UList a) -> String
9+showU xs = "[" ++ showU' xs ++ "]" where
10+ showU' : Borrowed (UList a) -> String
12+ showU' (x :: xs) = show x ++ ", " ++ showU xs
14+foo : UList Int -> IO ()
15+foo xs = do -- let f = \x : Int => showU xs
19+ where f : Int -> String