NameDateSize

..08-Sep-202021

.gitattributesH A D25-Jul-2019463

.gitignoreH A D25-Jul-2019440

basis/H30-Nov-2020111

compileH A D31-Dec-19690

config.guessH A D25-Jul-201942.9 KiB

config.h.inH A D30-Oct-202019.2 KiB

config.subH A D25-Jul-201935.5 KiB

configureH A D30-Oct-2020739 KiB

configure.acH A D30-Oct-202021.8 KiB

COPYINGH A D25-Jul-201925.8 KiB

depcompH A D25-Jul-201923 KiB

documentation/H25-Jul-201910

exportPoly.smlH A D25-Jul-20192.2 KiB

imports/H06-Aug-20209

install-shH A D25-Jul-201914.8 KiB

interruptpoly/H25-Jul-20193

libpolymain/H30-Nov-20206

libpolyml/H07-Dec-2020117

ltmain.shH A D25-Jul-2019316.8 KiB

m4/H25-Jul-20199

Makefile.amH A D25-Jul-20193.6 KiB

Makefile.inH A D22-Oct-202040.9 KiB

missingH A D25-Jul-20196.7 KiB

mlsource/H25-Jul-20197

modules/H22-Oct-20205

poly.1H A D06-Aug-20202.5 KiB

poly.icoH A D25-Jul-2019766

polyc.1H A D06-Aug-20201.1 KiB

polyc.inH A D25-Jul-20193.5 KiB

polyexports.hH A D25-Jul-20193.6 KiB

PolyImp/H30-Nov-20203

polyimport.1H A D06-Aug-20201.4 KiB

polyimport.cH A D25-Jul-20191.3 KiB

PolyML/H30-Nov-20203

PolyML.exe.manifestH A D06-Aug-2020603

polyml.pypH A D30-Nov-202012.2 KiB

PolyML.rcH A D22-Oct-20204.2 KiB

polymlInterpreted.pypH A D30-Nov-202010.6 KiB

PolyPerf/H30-Nov-20204

polystatistics.hH A D19-Aug-20204.2 KiB

README.mdH A D25-Jul-20192.9 KiB

resource.hH A D25-Jul-2019800

RootInterpreted.MLH A D30-Nov-20206 KiB

RootX86.MLH A D30-Nov-20207.3 KiB

samplecode/H25-Jul-20197

Tests/H25-Jul-20195

winconfig.hH A D22-Oct-202020.7 KiB

wininstall/H30-Nov-20206

README.md

1<img src="http://www.polyml.org/images/Poly_Parrot3.gif" alt="Poly/ML logo" height="100" >
2
3# Poly/ML
4
5Poly/ML is a Standard ML implementation originally written in an experimental
6language called [Poly](http://www.polyml.org/Doc.html#poly). It has been
7fully compatible with the [ML97 standard](http://sml-family.org/sml97-defn.pdf)
8since version 4.0. For a full history, see [here](http://www.polyml.org/FAQ.html#history).
9
10Poly/ML takes a conservative approach to the Standard ML language and avoids
11incompatible extensions.  It has added various library extensions particularly
12the thread library. Poly/ML's active development and unique
13features make it an exceptional implementation.
14
15## Table of Contents
16* [Features](#features)
17* [Basis](#basis)
18* [Platforms and Installation](#platforms-and-installation)
19* [Support](#support)
20
21## Features
22
23* Fast compiler
24* Preferred implementation for large projects such as [Isabelle](https://isabelle.in.tum.de/)
25  and [HOL](https://hol-theorem-prover.org/).
26* [Foreign function interface](http://www.polyml.org/documentation/Tutorials/CInterface.html) - allows
27  static and dynamic libraries to be loaded in Poly/ML and
28  exposes their functions as Poly/ML functions. See [here](https://www.mail-archive.com/polyml@inf.ed.ac.uk/msg00940.html)
29  for an example of static linking.
30* [Symbolic debugger](http://www.polyml.org/documentation/Tutorials/Debugging.html)
31* [Windows programming interface](http://www.polyml.org/documentation/Tutorials/WindowsProgramming.html)
32* [Thread library](http://www.polyml.org/documentation/Reference/Threads.html) - provides a
33  simplified version of Posix threads modified for Standard ML and
34  allows Poly/ML programs to make use of multiple cores.  The garbage collector is also
35  parallelised.
36
37## Basis
38
39The documentation for the Poly/ML Basis library can be found [here](http://www.polyml.org/documentation/Reference/Basis.html)
40and includes information on global values and types as well as structures,
41signatures and functors. More in-depth documentation can be found at
42the SML Family website [here](http://sml-family.org/Basis/manpages.html).
43
44## Platforms and Installation
45
46Poly/ML has native support for i386 (32- and 64-bit) and bytecode support for unsupported
47architectures. For more information, see the [download](http://www.polyml.org/download.html)
48page.
49
50### Debian/Ubuntu
51
52```bash
53$ apt-get install polyml
54```
55
56### OS X
57
58```bash
59$ brew install polyml
60```
61
62### FreeBSD
63
64```bash
65$ cd /usr/ports/lang/polyml && make install
66```
67
68### Git
69
70To build:
71
72```bash
73$ ./configure
74$ make
75$ make compiler
76$ make install
77```
78
79To clean:
80```bash
81$ make clean-local clean distclean
82```
83
84## Support 
85
86Support for Poly/ML can be found on Stackoverflow using the [polyml](http://stackoverflow.com/questions/tagged/polyml)
87and [sml](http://stackoverflow.com/questions/tagged/sml) tags or on the Poly/ML
88[mailing list](http://lists.inf.ed.ac.uk/mailman/listinfo/polyml) provided by the University of Edinburgh.
89