Dear all,
 I have used ForSyDe to translate a Haskell script to VHDL for a while, and I 
have one problem by applying where-clause during the translation.
I wrote a small function Plus2.hs which is implied as following

addTwof :: ProcFun (Int32 -> Int32)
addTwof = $(newProcFun [d|addTwof :: Int32 -> Int32
                          addTwof n = addOnef+1
                               where
                                 addOnef = n +1
                                          |])

*Plus2> writeVHDL plus2SysDef
*** Exception: VHDL Compilation Error: Untranslatable function: where 
constructs are not supported in functions:
    where addOnef_0 = n_1 GHC.Num.+ 1
in process function `addTwof' (created in Plus2)  used by  process `plus2Proc' 
belonging to system definition `plus2' (created in <unkown>)

The compiling process was fine, but the script could not be translated into 
VHDL, like the error i mentioned above.
Is there any way to solve this problem if a where-clause is a must. Thanks all.

Hanyi

_________________________________________________________________
Live Search视频搜索,快速检索视频的利器!
http://www.live.com/?scope=video
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to