-
Notifications
You must be signed in to change notification settings - Fork 25
/
TODO
43 lines (42 loc) · 1.6 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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
* Have compile return a Stats record of timing etc
* In interactive mode, make the runtime system catch ^C and stop execution
* Type checker improvements:
- allow generalization for local bindings
- use subsumption (like if) in the arms of alternatives
- instead of skolemization, use regular variables, making sure they are unique
* Redo type synonym expansion
- Do expansion during unification
* Implement two level tables for instances even in the tricky cases
* Removing [] from prim table
* Use pointer reversal during marking, will be slower
* Fix bug uncovered by Data.Type.Equality
* mkQIdent
* Get rid of evalstring()
- do everything in Haskell
- make a low level primError that takes a utf8 string
* Better pretty print of Expr
* Allow top level pattern bindings
- Merge EBind and EDef
* Implement pattern synonyms
* Implement qualified constraints
* Use capi, add value and field modifiers
* Ad hoc fix for f.g: check if g is a field
* Divide lib into different packages
* Sync lib with GHC base
* Use finalizers for alloca?
* Better naming of internal identifiers
* Add mask&co to exceptions
* Add reductions for underapplied K2,K3,K4
* Make a Unicode version of Data.Char
- make tables using the Haskell tools
- read tables lazily when outside ASCII range
Bugs:
* Missing IO in ccall shows wrong location
* Check for escaping skolemized variables
* Type checking Data.Data
* Install a targets.conf?
* let...in... doesn't parse correctly in a do
* let needs {} in a do with {}
* export list in -boot doesn't work
* Cannot derive Show for 'newtype Alt f a = Alt (f a)'
* Fundep bug mtl:Control/Monad/RWS/Class.hs