I just uploaded a new tutorial which covers three distinct, but related topics:
- acid-state - a native Haskell, noSQL, RAM-cloud database
- IxSet - a multi-indexed collection type (similar to Data.Map but with support for multiple keys)
- data-lens - a library which provides syntax that makes it easier to update nested records and other data types
The tutorial is available here:
The section on lenses is a great applied introduction to the concept which requires no understanding of Happstack, acid-state, or IxSet. So, even if you don't care about acid-state, you may find it useful if you have ever wondered what the heck lenses are.