Reading files: from file to console
Reading files: from file to console using withFile
Reading files: implementing withFile using Control.Exception.bracket
Reading files: from file to console using readFile
Reading and Writing files: using readFile and writeFile
To-Do List: ignore the todo.txt file
To-Do List: append to-dos
To-Do List: delete a to-do
To-Do List: delete a to-do using bracketOnError
Getting command-line arguments and program name
To-Do List: move old to-do implementation to 'old' directory
New To-Do List: add a to-do task
New To-Do List: display current to-do tasks
New To-Do List: remove a to-do task
New To-Do List: the command does not exist
New To-Do List: catchall pattern for add function (wrong number of args)
Copying files using ByteStrings
Reverse Polish Notation (RPN) calculator