Hardware software co-design in Haskell
Password security: a case history