Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
-- This file: -- http://anggtwu.net/LEAN/ioprocess1.lean.html -- http://anggtwu.net/LEAN/ioprocess1.lean -- (find-angg "LEAN/ioprocess1.lean") -- Author: Eduardo Ochs <eduardoochs@gmail.com> -- -- Superseded by: -- (find-angg "LEAN/luatree1.lean") -- -- (defun e () (interactive) (find-angg "LEAN/ioprocess1.lean")) -- (find-angg "LEAN/luatree.lean") -- (find-fplean4page 71 "def twice (action : IO Unit) : IO Unit") -- (find-fplean4text 71 "def twice (action : IO Unit) : IO Unit") -- (find-fplean4page 79 "Worked Example: cat") -- (find-fplean4text 79 "Worked Example: cat") -- (find-fplean4page 164 "The Monad Type Class") -- (find-fplean4text 164 "The Monad Type Class") -- (find-fplean4page 165 "General Monad Operations") -- (find-fplean4text 165 "General Monad Operations") import Lean.Log import Lean.Parser.Command import Lean.DeclarationRange import Lean.Data.Lsp.Utf16 #check List.mapM -- (find-lean4prefile "Lean/Parser/Command.lean") def twice (action : IO Unit) : IO Unit := do action action def twice42 (action : IO Unit) : IO String := do action action return "42" -- (find-lean4prefile "lake/Lake/Config/InstallPath.lean" "let out ← IO.Process.output {") #check IO.Process.output #print IO.Process.output def pro1 := IO.Process.output { cmd := "echo", args := #["foo", "bar"] } #check pro1 #print pro1 -- #eval pro1 #check ["foo", "bar"] #check #["foo", "bar"] #eval let a := 2; a * a #check pure 42 #check do return 42 def maain : IO Nat := do IO.println "hello" IO.println "world" return 0 def fooo : IO Nat := do let a ← pure 2 let b ← pure 2 return a * b -- IO.println "Hello" def foo : IO String := do let out ← IO.Process.output { cmd := "echo", args := #["foo", "bar"] } -- let exitcode := out.exitCode return out.stdout #eval foo /- let act : IO _ := do let out ← IO.Process.output { cmd := lean, args := #["--print-prefix"] } if out.exitCode == 0 then pure <| some <| FilePath.mk <| out.stdout.trim else pure <| none act.catchExceptions fun _ => pure none -/ -- Local Variables: -- coding: utf-8-unix -- End: