import VHDLTypes
import qualified VHDL
-main = do
- makeVHDL "Alu.hs" "exec" True
+-- main = do
+-- makeVHDL "Alu.hs" "exec" True
makeVHDL :: String -> String -> Bool -> IO ()
makeVHDL filename name stateful = do
-- A map of a Haskell function to a hardware signature
type SignatureMap = Map.Map HsFunction Entity
+-- A map of a builtin function to VHDL function builder
+type NameTable = Map.Map String (Int, [AST.Expr] -> AST.Expr )
+
data VHDLSession = VHDLSession {
-- | A map of Core type -> VHDL Type
vsTypes_ :: TypeMap,
--- /dev/null
+name: clash
+version: 0.1
+build-type: Simple
+synopsis: CAES Languege for Hardware Descriptions (CλasH)
+description: CλasH is a toolchain/language to translate subsets of Haskell to synthesizable VHDL. It does this by translating the intermediate System Fc (GHC Core) representation to a VHDL AST, which is then written to file.
+category: Development
+license: BSD3
+license-file: LICENSE
+package-url: http://github.com/darchon/clash/tree/master
+copyright: Copyright (c) 2009 Christiaan Baaij & Matthijs Kooijman
+author: Christiaan Baaij & Matthijs Kooijman
+stability: alpha
+maintainer: christiaan.baaij@gmail.com & matthijs@stdin.nl
+build-depends: base > 4, syb, ghc, ghc-paths, transformers, haskell98,
+ ForSyDe, regex-posix ,data-accessor-template, pretty,
+ data-accessor, containers, prettyclass, tfp > 0.3,
+ tfvec, QuickCheck, template-haskell
+
+executable: clash
+main-is: Main.hs
+ghc-options: