Haskell really needs extensible records. But I’d like to do one thing above what Elm does.

book = { title = "Steppenwolf", author = "Hesse" }
.title book

The .title above should generate a functional Lens rather than just a getter value. Lenses form a category which means they allow composition. That means you can use them to access or update nested data structures. Awesome stuff.