|
From: Matthew F. <mat...@gm...> - 2017-07-10 02:37:11
|
Some of the typical suggestions come to mind: * Some kind of Unicode support. MLton now supports basic UTF-8 input in string constants (http://mlton.org/SuccessorML#ExtendedTextConsts) but could use additional library support for things like validating proper UTF-8 encoded strings, counting the number of Unicode characters in a string, etc. * A general-purpose graph library. SML/NJ's utility library has a strongly-connected component library, but there is often a need for more general graph operations. * SML/NJ has a relatively new JSON library, but I don't know of any YAML libraries, which is another common interchange format (which I've sometimes found easier to generate than JSON). * Additional IDE (esp. Emacs) support. For example, MLton has a 'def-use' mode for emacs (http://mlton.org/EmacsDefUseMode), which I use quite a bit, but I wonder if it wouldn't be better to integrate with one of the general-purpose emacs packages for that purpose (e.g., ctags, xref). Similarly, I'd love to get some kind of completion support, presumably using the emacs company-mode package. * I've wanted to develop a more powerful and declarative "options" library. Something that goes a bit further than getopt and even SML/NJ's Controls library (https://smlnj-gforge.cs.uchicago.edu/scm/viewvc.php/smlnj-lib/trunk/Controls/controls-sig.sml?view=markup&revision=4197&root=smlnj). For example, I'd like to be able to express constraints between options (e.g., if the "debug" option has been enabled, then the "verbose" default is "true"; it is an error for both "profile" and "debug" to be enabled); I'd like the same declarative description of options to generate code to support setting options via command line processing as well as via configuration file reading. * One issue with IDE support for SML is that it is often difficult (if not impossible) to know the context in which a .sml file is meant to be used; it is implicit in the containing .mlb or .cm file. So, unlike most languages, where upon encountering an identifier that is not bound in the file, one jumps to the top of the file to look at the #import or include directives, one needs to do more work with SML files. So, I've wondered what things would look like in a world where we had .smlb files (or something), which would be a (restricted) combination of .sml and .mlb files. Essentially something that allowed one to declare the imports and exports of SML code. -Matthew On Thu, Jul 6, 2017 at 7:23 PM, Ram Raghunathan <ra...@cs...> wrote: > All, > > I'm a graduate student at CMU, and a few of us here along with Gabriel > Scherer are putting together an ML hacking evening to let people make > small and meaningfull contributions to ML. I was wondering if the > MLton dev team had any ideas of suggestions for MLton. These should be > things that someone can do in a few hours. Some examples include > documentation and simple features. We are open to suggestions that are > both MLton-specific and more generally for SML. > > Here is a website for a similar even held at MIT last year: > http://www.ccs.neu.edu/home/gasche/tmp/ocaml-hacking-session-june-6-2017/announce.html > That event was for OCaml, while we wish to expand it to OCaml and > SML. > > Thanks, > Ram Raghunathan > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > MLton-devel mailing list > MLt...@li...; mlt...@ml... > https://lists.sourceforge.net/lists/listinfo/mlton-devel |