AHistoryofHaskell-BeingLazyWithClass