(record Maybe/Just value) (record Maybe/Nothing) (let Maybe/just Maybe/Just/create) (let Maybe/nothing Maybe/Nothing/create) (let Maybe/map (\[f m] (match (kind m) :Maybe/Just (Maybe/just (f (Maybe/Just/get-value m))) :Maybe/Nothing (Maybe/nothing)))) (let Maybe/and-then (\[f m] (match (kind m) :Maybe/Just (f (Maybe/Just/get-value m)) :Maybe/Nothing (Maybe/nothing)))) (let Maybe/default (\[default m] (match (kind m) :Maybe/Just (Maybe/Just/get-value m) :Result/Ex default)))