added practicum files, updated gitignore
[fp1415.git] / files / practicum / StdStack2.icl
1 implementation module StdStack2
2
3 import StdEnv
4
5 :: Stack2 elem = E.impl: { stack :: impl
6 , push :: elem impl -> impl
7 , pop :: impl -> impl
8 , top :: impl -> elem
9 , elements :: impl -> [elem]
10 }
11
12 push :: elem (Stack2 elem) -> Stack2 elem
13 push ...
14
15 pop :: (Stack2 elem) -> Stack2 elem
16 pop ...
17
18 top :: (Stack2 elem) -> elem
19 top ...
20
21 elements :: (Stack2 elem) -> [elem]
22 elements ...