/
TODO
29 lines (28 loc) · 1.25 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Compiler:
- properly print "forall"s for type variables
- record type instantiations for future monomorphization
- fix static type variables, see example in static.split
- clock_types: ct -> ty
- unify handling of interface environments (LocalModule / Modname)
- currently, (x, y) = (1, x) is not considered "causal" (schedulable),
is this reasonable?
- check if bounds inference works for user-defined enumerated types
- Clock_types is growing enormous, move stuff to Clock_types_utils
- handle global static tuples
- make static exps proper exps
- rename node_decl into node_dec
- rework equations, remove Eq_condvar, add "cond" expression
- dump clocking info into Emacs-compatible format (à la Lucy-n)
- nir_of_acids: fix translation of free variables inside domains
- tuple lowering is wrong, you have to box tuples when instantiating
type variables.
- rename "real size" of buffers to "nobypass size"
- clean up the Buffer_lowering pass (remove fuse_local_variables)
- factor out the creation of operators from Pervasives
- lower polymorphic equality earlier in the compiler, or switch to a uniform
representation of values.
Resolution:
- Only compute causal solutions
- User-supplied word reconstruction choice
- Choice of linear objective
- Abstract resolution