556dfc0593fce85dd15411f9d38e744de40d644d
[fp1415.git] / week3 / camil / StdSortList.dcl
1 definition module StdSortList
2
3 import StdClass
4
5 :: SortList a
6
7 newSortList :: SortList a | zero a // lege gesorteerde lijst
8 memberSort :: a (SortList a) -> Bool | Eq, Ord a // is element van
9 insertSort :: a (SortList a) -> SortList a | Ord a // voeg element toe
10 removeFirst :: a (SortList a) -> SortList a | Eq, Ord, zero a // verwijder eerste voorkomen
11 removeAll :: a (SortList a) -> SortList a | Eq, Ord, zero a // verwijder alle voorkomens
12 elements :: (SortList a) -> [a] // geef alle elementen
13 count :: (SortList a) -> Int // aantal elementen
14
15 minimum :: (SortList a) -> a // huidige minimum waarde
16 maximum :: (SortList a) -> a // huidige maximum waarde
17
18 mergeSortList :: (SortList a) (SortList a) -> SortList a | Eq, Ord, zero a // meng gesorteerde lijsten