(.module: [library [lux #* [abstract [monad (#+ do)]] [control ["." try ("#\." functor)] [concurrency ["." async (#+ Async) ("#\." monad)]]] [data [text ["%" format (#+ format)] [encoding ["." utf8]]] [format ["." xml]]] [world ["." file] ["." console (#+ Console)]]]] ["." /// #_ [command (#+ Command)] ["#." action] ["#." pom]]) (def: .public success (format "Successfully created POM file: " ///pom.file)) (def: .public (do! console fs profile) (-> (Console Async) (file.System Async) (Command Any)) (do ///action.monad [content (|> (///pom.write profile) (try\map (|>> (\ xml.codec encode) (\ utf8.codec encode))) async\in) _ (\ fs write content ///pom.file)] (console.write_line ..success console)))