declare fun {Pred2ListMonad Pred} fun {$ X} if {Pred X} then [X] else nil end end end