Learn You a Haskell for Great Good! - Miran Lipovaca [172]
guard function, using with monads, MonadPlus and the guard Function
guards. See also functions, Pattern Matching with Lists and List Comprehensions, Pattern Matching with Lists and List Comprehensions, Guards, Guards!, Guards, Guards!, Guards, Guards!, Guards, Guards!
otherwise, Guards, Guards!
using, Guards, Guards!
vs. if expressions, Pattern Matching with Lists and List Comprehensions
vs. if/else trees, Guards, Guards!
vs. patterns, Pattern Matching with Lists and List Comprehensions
H
haiku.txt input, Input Redirection
handles vs. file contents, Reading and Writing Files
Haskell, Using newtype to Make Type Class Instances, On newtype Laziness, Tasteful Stateful Computations
as pure language, Tasteful Stateful Computations
laziness of, Using newtype to Make Type Class Instances
haystack and needle lists, Counting Words
head function, using with lists, Comparing Lists
Heathrow to London example, Heathrow to London, Calculating the Quickest Path, Representing the Road System in Haskell, Representing the Road System in Haskell, Writing the Optimal Path Function, Getting a Road System from the Input
optimal path function, Representing the Road System in Haskell
quickest path, Heathrow to London
road system, Calculating the Quickest Path
road system from input, Writing the Optimal Path Function
stack overflow errors, Getting a Road System from the Input
Hello, world! program, Separating the Pure from the Impure, Separating the Pure from the Impure, Separating the Pure from the Impure, Hello, World!, Hello, World!, Hello, World!
compiling, Separating the Pure from the Impure
defining main, Separating the Pure from the Impure
function types, Hello, World!
printed output, Hello, World!
running, Hello, World!
hierarchical modules, Enter Data.Map
higher-order functions. See also functions, Higher-Order Functions, Higher-Order Functions, Some Higher-Orderism Is in Order, Implementing zipWith, Implementing zipWith, The map Function
curried functions, Higher-Order Functions
flip, Implementing zipWith
map, The map Function
type declaration, Some Higher-Orderism Is in Order
zipWith, Implementing zipWith
Hoogle search engine, Modules
I
I/O (input and output), More Input and More Output, Reading and Writing Files, Using the withFile Function, It's Bracket Time, It's Bracket Time, Grab the Handles!, Grab the Handles!, More Random Functions
and randomness, More Random Functions
appendFile function, Grab the Handles!
bracket function, Using the withFile Function
files and streams, More Input and More Output
readFile function, It's Bracket Time
withFile function, Reading and Writing Files
writeFile function, It's Bracket Time
I/O actions, Input and Output, Hello, World!, Gluing I/O Actions Together, Gluing I/O Actions Together, Gluing I/O Actions Together, Gluing I/O Actions Together, Gluing I/O Actions Together, Gluing I/O Actions Together, Gluing I/O Actions Together, Gluing I/O Actions Together, Gluing I/O Actions Together, Using let Inside I/O Actions, Using let Inside I/O Actions, Using let Inside I/O Actions, Putting It in Reverse, Putting It in Reverse, I/O Action Review, Getting Strings from Input Streams, Cleaning Up, Cleaning Up, Cleaning Up, Applicative Functors, I/O Actions As Functors, Useful Functions for Applicatives, Monad Laws
<- vs. let bindings, Using let Inside I/O Actions
as functors, Applicative Functors
binding names, Gluing I/O Actions Together
do blocks, I/O Actions As Functors
do notation, Gluing I/O Actions Together
getArgs, Cleaning Up
getContents, Getting Strings from Input Streams
getLine type, Gluing I/O Actions Together
getProgName, Cleaning Up
gluing together, Gluing I/O Actions Together
in System.Environment module, Cleaning Up
let syntax, Gluing I/O Actions Together
making from pure value, Putting It in Reverse
performing, Hello, World!, Gluing I/O Actions Together
results yielded by, Input and Output, Gluing I/O Actions Together
return function, Putting