Import Upstream version 20180207
[hcoop/debian/mlton.git] / doc / guide / src / MatthewFluet.adoc
1 MatthewFluet
2 ============
3
4 Matthew Fluet (
5 mailto:matthew.fluet@gmail.com[matthew.fluet@gmail.com]
6 ,
7 http://www.cs.rit.edu/%7Emtf
8 )
9 is an Assistant Professor at the http://www.rit.edu[Rochester Institute of Technology].
10
11 ''''
12
13 Current MLton projects:
14
15 * general maintenance
16 * release new version
17
18 ''''
19
20 Misc. and underspecified TODOs:
21
22 * understand <:RefFlatten:> and <:DeepFlatten:>
23 ** http://www.mlton.org/pipermail/mlton/2005-April/026990.html
24 ** http://www.mlton.org/pipermail/mlton/2007-November/030056.html
25 ** http://www.mlton.org/pipermail/mlton/2008-April/030250.html
26 ** http://www.mlton.org/pipermail/mlton/2008-July/030279.html
27 ** http://www.mlton.org/pipermail/mlton/2008-August/030312.html
28 ** http://www.mlton.org/pipermail/mlton/2008-September/030360.html
29 ** http://www.mlton.org/pipermail/mlton-user/2009-June/001542.html
30 * `MSG_DONTWAIT` isn't Posix
31 * coordinate w/ Dan Spoonhower and Lukasz Ziarek and Armand Navabi on multi-threaded
32 ** http://www.mlton.org/pipermail/mlton/2008-March/030214.html
33 * Intel Research bug: `no tyconRep property` (company won't release sample code)
34 ** http://www.mlton.org/pipermail/mlton-user/2008-March/001358.html
35 * treatment of real constants
36 ** http://www.mlton.org/pipermail/mlton/2008-May/030262.html
37 ** http://www.mlton.org/pipermail/mlton/2008-June/030271.html
38 * representation of `bool` and `_bool` in <:ForeignFunctionInterface:>
39 ** http://www.mlton.org/pipermail/mlton/2008-May/030264.html
40 * http://www.icfpcontest.org
41 ** John Reppy claims that "It looks like the card-marking overhead that one incurs when using generational collection swamps the benefits of generational collection."
42 * page to disk policy / single heap
43 ** http://www.mlton.org/pipermail/mlton/2008-June/030278.html
44 ** http://www.mlton.org/pipermail/mlton/2008-August/030318.html
45 * `MLton.GC.pack` doesn't keep a small heap if a garbage collection occurs before `MLton.GC.unpack`.
46 ** It might be preferable for `MLton.GC.pack` to be implemented as a (new) `MLton.GC.Ratios.setLive 1.1` followed by `MLton.GC.collect ()` and for `MLton.GC.unpack` to be implemented as `MLton.GC.Ratios.setLive 8.0` followed by `MLton.GC.collect ()`.
47 * The `static struct GC_objectType objectTypes[] =` array includes many duplicates. Objects of distinct source type, but equivalent representations (in terms of size, bytes non-pointers, number pointers) can share the objectType index.
48 * PolySpace bug: <:Redundant:> optimization (company won't release sample code)
49 ** http://www.mlton.org/pipermail/mlton/2008-September/030355.html
50 * treatment of exception raised during <:BasisLibrary:> evaluation
51 ** http://www.mlton.org/pipermail/mlton/2008-December/030501.html
52 ** http://www.mlton.org/pipermail/mlton/2008-December/030502.html
53 ** http://www.mlton.org/pipermail/mlton/2008-December/030503.html
54 * Use `memcpy`
55 ** http://www.mlton.org/pipermail/mlton-user/2009-January/001506.html
56 ** http://www.mlton.org/pipermail/mlton/2009-January/030506.html
57 * Implement more 64bit primops in x86 codegen
58 ** http://www.mlton.org/pipermail/mlton/2009-January/030507.html
59 * Enrich path-map file syntax:
60 ** http://www.mlton.org/pipermail/mlton/2008-September/030348.html
61 ** http://www.mlton.org/pipermail/mlton-user/2009-January/001507.html
62 * PolySpace bug: crash during Cheney-copy collection
63 ** http://www.mlton.org/pipermail/mlton/2009-February/030513.html
64 * eliminate `-build-constants`
65 ** all `_const`-s are known by `runtime/gen/basis-ffi.def`
66 ** generate `gen-constants.c` from `basis-ffi.def`
67 ** generate `constants` from `gen-constants.c` and `libmlton.a`
68 ** similar to `gen-sizes.c` and `sizes`
69 * eliminate "Windows hacks" for Cygwin from `Path` module
70 ** http://www.mlton.org/pipermail/mlton/2009-July/030606.html
71 * extend IL type checkers to check for empty property lists
72 * make (unsafe) `IntInf` conversions into primitives
73 ** http://www.mlton.org/pipermail/mlton/2009-July/030622.html