HHDL - Haskell Hardware Design Language