% $RCSfile: StackSecureDeclUnbun.oz,v $ \insert 'NewWrapper.oz' declare local Wrap Unwrap {NewWrapper Wrap Unwrap} fun {NewStack} {Wrap nil} end fun {Push S E} {Wrap E|{Unwrap S}} end fun {Pop S ?E} case {Unwrap S} of X|S1 then E=X {Wrap S1} end end fun {IsEmpty S} {Unwrap S}==nil end in Stack=stack(new:NewStack push:Push pop:Pop isEmpty:IsEmpty) end