poly man page

poly — the Poly/ML Standard ML implementation




poly starts the Poly/ML shell. Poly/ML is an implementation of Standard ML written by David Matthews originally at the University of Cambridge and maintained as a project supported by contributors.



Print the version of Poly/ML and exit.


Print a list of the arguments and exit.


Suppress the start-up message.


Interactive mode.  Output a prompt for each input line.  This is the default if input is from a terminal.

--use FILE

Reads input from FILE as though executing the ML command 'use "FILE";' before the ML shell starts.

--eval STRING

Compiles and executes STRING as ML before the ML shell starts.


Normally if the ML code raises an unhandled exception control returns to the ML shell.  With this option the shell exits on an unhandled exception.


Include extra mark-up information when printing.  This is only suitable when Poly/ML is run under an environment that is able to decode the additional information.


Run the IDE communications protocol rather than the normal read-eval-print loop.  Only suitable for running within a development environment.


The input is a shell script.  The first line is skipped if it begins with #!.

-H  size

Sets the initial heap size.  The size may be written as a number optionally followed by K, M or G representing kilobytes, megabytes or gigabytes.  If none of these is given the number is taken as megabytes.

--minheap size

Set the minimum heap size.  The heap will not shrink below this value.

--maxheap size

Set the maximum heap size.  The heap will not grow above this value.

--gcpercent percent

Set the target percentage of time that the code should spend in the garbage collector.  The heap sizer will attempt to set the heap size to achieve this target consistent with the minimum and maximum heap sizes given by the arguments and also consistent with keeping paging under control.

--gcthreads threads

Sets the number of threads used in the parallel garbage collector.  Setting this to 1 forces the garbage collector to be single-threaded.  The value 0, the default, is taken to be the number of processors (cores) available.

--debug options

Set various debugging options for the run-time system.

See Also

http://www.polyml.org The Poly/ML web site.


Poly/ML Version 5.6 2015