[Haskell] Closed Projections on HLists?