[More updates John Goerzen **20080703213243] { hunk ./en/ch08-io.xml 33 - FIXME: have we already explained main? - FIXME: have we already explained $ ? hunk ./en/ch08-io.xml 54 - reads a line from standard input. The &larrow; operator may be new to - you. Put simply, that operator binds the result from executing an + reads a line from standard input. The &larrow; syntax may be new to + you. Put simply, that binds the result from executing an hunk ./en/ch08-io.xml 82 - action. You can store it and nothing will happen. - I could say writefoo = putStrLn "foo" and nothing - happens right then. But if I later call writefoo in - the middle of another I/O action, the - writefoo action will be executed when its - parent action is executed. The - () is an empty tuple (pronounced unit), indicating that there is - no return value from &putStrLn;. This is similar to - void in Java or C.The type of the value () is also (). + action. You can store it and nothing + will happen. I could say writefoo = putStrLn + "foo" and nothing happens right then. But if I + later use writefoo in the middle of + another I/O action, the writefoo action + will be executed when its parent action is executed -- I/O + actions can be glued together to form bigger I/O actions. The + () is an empty tuple (pronounced + unit), indicating that there is no return value + from &putStrLn;. This is similar to void + in Java or C.The type of the value + () is also (). hunk ./en/ch08-io.xml 118 - What Is An Action? + What Is An I/O Action? hunk ./en/ch08-io.xml 136 - value, but the action will not perform I/O until it is executed + value, but the action will not perform I/O until it is + executed inside another I/O action (or it is main) hunk ./en/ch08-io.xml 163 - from there. Most Haskell programs will still have the majority - of their code outside IO actions; the I/O - actions are just used to perform I/O and call the pure code. + from there. Most Haskell code is pure; the I/O actions perform + I/O and call that pure code. hunk ./en/ch08-io.xml 173 - FIXME: describe more on indentation of do blocks here, - space vs. tabs, etc? hunk ./en/ch08-io.xml 198 - Down in main, we assign the result of + Down in main, we bind the result of hunk ./en/ch08-io.xml 258 - Pure vs. I/O + Pure vs. Impure hunk ./en/ch08-io.xml 345 - FIXME: insert xref to instructions on finding library - ref }