Parse, don't validate
Easing back into it.
Making the solver fast
A fun little word puzzle. Here we solve it, next we make it fast.
A few observations about completing the challenges.
Unfolding a simulation
Nondeterminism, list monads, and dodgy heuristics
A lot of work to capture features of the problem
Reading around the subject pays dividends
More multisets and debugging
Data.Ix and the first use of the RWS monad
Monoids of endomorphisms
Zippers on trees
A very declarative solution
Monads and bit-fiddling
Monads, typeclasses, and lenses return
MultiSet: Mostly useful.
Why did I overload lists by default?
Complicated rules leads to complicated code
All about avoiding loops
A stack-based parser that does just enough
Revelations of the Ix datatype
Brute force trumps cleverness
Gradient descent and higher-order functions
It's all about the data structures
Stay up to date! Get all the latest & greatest posts delivered straight to your inbox