Sha256: a4acc66c28524d8dd532451a8504648f2d24b293ed1d885f8d6b8943fb8d97de
Contents?: true
Size: 721 Bytes
Versions: 268
Compression:
Stored size: 721 Bytes
Contents
module LinkedList ( LinkedList , fromList, toList, reverseLinkedList , datum, next, isNil, nil, new) where data LinkedList a = Nil | Cons { datum :: a , next :: LinkedList a } deriving (Eq, Show) new :: a -> LinkedList a -> LinkedList a new = Cons nil :: LinkedList a nil = Nil fromList :: [a] -> LinkedList a fromList = foldr Cons Nil toList :: LinkedList a -> [a] toList Nil = [] toList (Cons x xs) = x : toList xs reverseLinkedList :: LinkedList a -> LinkedList a reverseLinkedList = go Nil where go acc Nil = acc go acc (Cons x xs) = (go $! Cons x acc) xs isNil :: LinkedList a -> Bool isNil Nil = True isNil _ = False
Version data entries
268 entries across 268 versions & 1 rubygems