SML(1)
π SML(1) β like, the interactive Standard ML of New Jersey system, bestie β¨
okay so this is the manual page for sml (section 1 of the manual, iykyk), and it's genuinely iconic β it's the whole interactive Standard ML of New Jersey situation. Let me walk you through it, no cap. π«Ά
πΈ SYNOPSIS πΈ
sml [SML-OPTIONS] [OPTIONS] [FILES]
that's the whole vibe. options first, files after, slay. π
β¨ DESCRIPTION β¨
Standard ML of New Jersey is an incremental, interactive compiler that accepts SML declarations and expressions to be evaluated from standard input. so like β you type stuff at it, it eats it, it evaluates it, it's giving REPL main character energy. π
π¦ OPTIONS π¦
bestie there are SO many of these, and you will be reading all of them, because I said so π
-32β run the 32-bit version of the SML/NJ system (currently the default). classic, reliable, the default bestie fr fr.-64β run the 64-bit version of the SML/NJ system. β οΈ this one only applies to the x86-64 (aka amd64) architecture, so don't come for it if you're on something else.@SMLwordsizeβ echo the wordsize (i.e., either32or64) of the system to standard output and then exit. (this option was added in version110.97π₯)@SMLversionβ echo the command name and SML/NJ version (e.g.,"sml 110.99.9") to standard output and then exit. cute little flex, honestly.@SMLload=IMAGEβ specifies the name of the heap-image file to load. the heap suffix can be omitted as long as there is not a file of the same name. π@SMLcmdname=NAMEβ set the command name; this is the value returned byCommandLine.name().@SMLsuffixβ echo the heap suffix for the system to standard output and then exit.@SMLalloc=SIZEβ specify the preferred size of the allocation area.@SMLrun=RUNTIMEβ specifies the runtime system.@SMLquietβ load heap image silently (this is the default, so, yeah, it's already chill).@SMLverboseβ show heap image load progress. for when you need to see the loading happening π@SMLobjectsβ show list of executable objects.@SMLdebug=FILEβ write debugging info to file. π-Cctl=valueβ set the controlctltovalue.-Dname=valueβ define the CM variablenameto have the given value.-D'nameβ define the CM variablenameto have the value1. (yes, that's a cute little quote mark in there, don't @ me)-Unameβ remove any definition of the CM variablename.-Hβ produce complete help listing. the full β¨everythingβ¨ experience.-hβ produce minimal help listing. lowkey mode.-hlevelβ help with obscurity limit.-Sβ list all the controls along with their default value.-slevelβ print a limited list of settings. the number of levels of the control hierarchy is controlled by level, with0printing just the root of the hierarchy. π-Eβ list all the controls along with their corresponding environment variables.-elevelβ print a limited list of environment variables; the number of levels of the control hierarchy is controlled by level, with0printing just the root of the hierarchy. (yes it's the-sone but for env vars, they're siblings π)-mβ switch toCM.make.-aβ switch toCM.autoload; this is the default.file.cmβ runCM.makeorCM.autoloadonfile.cmand then return to the SML prompt. which command is run is determined by the-mand-aflags. πfile.sigβ executeuse file.sigbefore entering the SML top-level loop.file.smlβ (use) executeuse file.smlbefore entering the SML top-level loop.file.funβ (use) executeuse file.funbefore entering the SML top-level loop.
fr fr, notice how.sig,.smland.funall getuse'd before you land in the top-level loop β it's giving "prep work before the party" π
π AUTHOR π
sml(1) was originally created by Andrew Appel and David MacQueen in 1987 β literal legends, honestly. the system is currently maintained by Matthias Blume, David MacQueen, and John Reppy. π«Ά
π§ SEE-ALSO π§
smlnj(7)- Standard ML of New Jersey website <https://smlnj.org>
like, go read smlnj(7) too, bestie, it's the whole picture. β¨
π COPYING π
Copyright Β© 2020 The Fellowship of SML/NJ
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
β οΈ okay so real talk: no warranty, not even for merchantability or fitness for a particular purpose. that's not me being dramatic, that's literally what it says. π
and that's the whole page, bestie π
go forth and evaluate some declarations. this was SML/NJ, dated 2025-11-04, and it's page SML(1) of the manual β mwah, love u, bye ππ¦π
π¦ where this page comes from
- arch rolling: smlnj 110.99.9-1 Β· SMLNJ
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms