Minor edits.
[emacs/old-mirror.git] / TODO
blob15d2f373e503f008171b3c4e71394f89d564e959
1 * file-name completion in sml-cm-mode.
3 * Don't always jump to the *sml* buffer when you send a snippet of code.
5 * Fix inferior-sml-mode's TAB completion of filenames so it doesn't append
6   a space.
8 * Improve support for MLton's def-use info (see http://mlton.org/Emacs)
10 * Add an sml-mlb-mode for ML Basis files (see http://mlton.org/Emacs)
12 * improve M-C-f and M-C-b (they too often don't do the right thing) and
13   add M-C-k and other such sexp-chunked operations.
15 * if indentation is non-obvious, return a list of possible indentations
16   and choose the first unless the current is one of the possible choices.
18 * make `M-x sml-compile' more generic.
20 * allow specifying indentation of dependent keywords (how to indent `in'
21   relative to `let', for example).
23 * use symbols instead of strings for `sym'.
25 * recognize irrefutable patterns (with "Capital"-heuristics, for example:
26   a regexp like "\\([(),]\\|[_a-z][_a-z0-9]*\\)+").
27   This can then be used to allow indenting like
29                 (fn x =>
30                  some expressions)
32 * take advantage of text after-the-line (when available) for indentation.
34 * obey fixity directives.
36 * dangling `case e' in stuff like
38   fun myfunction x = case x
39    of bla =>
40     | bli =>
42 * deal with CPS kind of code ???
44   function1 (arg1, arg2, fn v1 =>
45   function2 (arg2, fn v2 =>
46   function3 (arg5, arg3, arg8, fn v3 =>
47   function4 (v1, v2, v3))))
49   or even just
51   F.LET (v1, foo,
52   F.LET (v2, bar,
53   F.LET (v3, baz,
54   F.RET [v1, v2, v3])))