X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fmaster-project%2Freport.git;a=blobdiff_plain;f=Outline;h=38383b8acb846b608489a58bee96ec9567081aa4;hp=73246f9dc78177926933e61cfeb46677cee82dea;hb=b585bb305e914b8ad88da1876c8daef66e9bbb95;hpb=c8b72a250403339e3782e3efebc02a11f2411182 diff --git a/Outline b/Outline index 73246f9..38383b8 100644 --- a/Outline +++ b/Outline @@ -1,13 +1,32 @@ -Implementation issues +Context + Other FHDLs (short, Christiaan has details) + + Advantages of clash / why clash? + + VHDL / Verilog / EDIF etc. Why VHDL? -State + +Haskell as hardware + Simple function -> component interpretation (Model: Structure) + Model: State + Explicit vs implicit passing of state (e.g, delay) + Explicit vs implicit marking + Interpret: Polymorphism + Interpret: Higher order + Need: Dependent types + Impossible things: Infinite recursion, higher order expressions Prototype + Choice of Haskell + Core - description of the language (appendix?) Stages (-> Core, Normalization, -> VHDL) + Implementation issues -Core - -VHDL vs EDIF generation + Haskell language coverage / constraints + Recursion + Builtin types + Custom types (Sum types, product types) + Function types / higher order expressions Normalization Normal form @@ -16,26 +35,10 @@ Normalization Termination Casts -Context - -Other FHDLs - -VHDL / Verilog / EDIF etc. - -Advantages of clash / why clash? - -Haskell as hardware - Dependent types - Impossible things: Infinite recursion, higher order expressions - -Haskell language coverage / constraints - Recursion - Builtin types - Custom types (Sum types, product types) - Function types / higher order expressions - Future work Boilerplate reduction (State distribution & pipelining) Recursion - Multiple time domains + Multiple time domains (Events) Multiple cycle descriptions + Higher order state + New language