9866fd0269b19d401e2af649fed4f1a580c88dc0
[matthijs/master-project/report.git] / Outline
1 Context
2   Other FHDLs (short, Christiaan has details)
3
4   Advantages of clash / why clash?
5
6   VHDL / Verilog / EDIF etc. Why VHDL?
7
8
9 Haskell as hardware
10         Simple function -> component interpretation (Model: Structure)
11         Model: State
12           Explicit vs implicit passing of state (e.g, delay)
13           Explicit vs implicit marking
14         Interpret: Polymorphism
15         Interpret: Higher order
16         Need: Dependent types
17         Impossible things: Infinite recursion, higher order expressions,
18         recursive types.
19
20 Prototype
21         Choice of Haskell
22         Core - description of the language (appendix?)
23         Stages (-> Core, Normalization, -> VHDL)
24         Implementation issues
25
26         Haskell language coverage / constraints
27                 Recursion
28                 Builtin types
29                 Custom types (Sum types, product types)
30                 Function types / higher order expressions
31
32 Normalization
33         Normal form
34         Rules used
35         Completeness / conditions on input
36         Termination
37         Casts / Strictness / Casebinders not fully supported
38
39 Future work
40         Boilerplate reduction (State distribution & pipelining)
41         Recursion
42         Multiple time domains (Events)
43         Multiple cycle descriptions
44         Higher order state
45         New language