There are a fairly large number of libraries for Standard ML, but it can be hard to find them. Here is a list of some of the useful ones that I know about. If you'd like to contribute to this document, email email@example.com
and I'll give you access.
- Allen Leung's SML libraries
includes an improved (w.r.t. SML/NJ) RegExp library, a printf library
based on Functional Unparsing, and a stream library to make TextIO
streams from pipes, sockets, etc.
- isaplib collects Isabelle's general libraries
together with some additional tools for managing names, finite
mappings, finite binary relations, and re-namings. Isabelle's Libraries
include XML, typical data structures, parsing, printing, multi-core
programming in PolyML, name-spaces, and lots lots more.
- MLton Libraries.
These are design to work with MLton, and most of which can easily be
ported to PolyML. In fact MLton can itself be compiled with PolyML.
- GTK bindings,
- an HTTP server,
- XML parsing,
- Regular expressions,
- Pretty printing,
- Unix-operating system tools,
- FGL is a functional graph library.
- Hardcore Processing's SML libraries provide generic error handling code, arithmetic, geometry, collections, functional IO, and parsing libraries
- Protobuf - an open-source implementation of Google's protocol buffers in SML.
Programming Language and Computer Science Libraries
Editor support for writing ML
Web-related projects using SML
- SMLserver is a web-server plugin for Apache. Based on MLKit, it provides interfaces for working with MySqlm Oracle, Postgres, XML-RPC.
- ML server pages - use ML like you would PHP.
- recent Ur framework for dynamic web-pages interfacing to SQL databases. Previously was: smlweb - dynamic web site tools for Standard ML.
- SML on Stilts
- a framework for robust web development based on multistage
programming (for MLton); includes HTTP server, and SQL connections.
- PolyChrome - a plugin for Firefox that runs PolyML.
SQL/Database stuff using SML
- smlSQL - SQL library for Standard ML.
- Smldb is a small library for an ML based database.
- mlmongo is a Mongo wire protocol for accessing mongo databases.
See also the rather old list from Appel's list of other projects using SML (Database, SQL, and Web-serving related libraries)