adamc@398: datatype list t = Nil | Cons of t * list t
adamc@398:
adamc@398: fun handler (ls : list bool) = return
adamc@398:
adamc@402: datatype wlist = WNil | Empty | WCons of bool * wlist
adamc@402:
adamc@402: fun whandler' (ls : wlist) =
adamc@402: case ls of
adamc@402: WNil => Nil
adamc@402: | Empty => Empty
adamc@402: | WCons (x, ls') => {[x]} :: {whandler' ls'}
adamc@402:
adamc@402: fun whandler ls = return (whandler' ls)
adamc@402:
adamc@398: fun main () : transaction page = return
adamc@402: !
adamc@402: Nil
adamc@402: Empty
adamc@402: True :: False :: Empty
adamc@398: