version 1.59, 2025/05/18 20:40:35
|
version 1.62, 2025/05/19 13:14:35
|
Line 4
|
Line 4
|
@settitle The FreeM Manual |
@settitle The FreeM Manual |
|
|
@copying |
@copying |
This manual is for FreeM, (version 0.65.1-rc0), which is a free software implementation of the M programming language. |
This manual is for FreeM, (version 0.65.1-rc1), which is a free software implementation of the M programming language. |
|
|
Print-optimized versions of this book are typeset in @emph{Computer Modern} by the author using the @emph{GNU Texinfo} tools. |
Print-optimized versions of this book are typeset in @emph{Computer Modern} by the author using the @emph{GNU Texinfo} tools. |
|
|
Line 19 Permission is granted to copy, distribut
|
Line 19 Permission is granted to copy, distribut
|
|
|
@title The FreeM Manual |
@title The FreeM Manual |
@subtitle @sc{The Official Manual of FreeM} |
@subtitle @sc{The Official Manual of FreeM} |
@subtitle Version 0.65.1-rc0 |
@subtitle Version 0.65.1-rc1 |
@c@vskip 10pt |
@c@vskip 10pt |
@c@center @image{freem-logo-sm,,,,.png} |
@c@center @image{freem-logo-sm,,,,.png} |
@author Serena Willis |
@author Serena Willis |
Line 445 Attempting to start a FreeM interpreter
|
Line 445 Attempting to start a FreeM interpreter
|
The FreeM direct-mode environment is the mode entered when FreeM is invoked without the use of @option{-r @emph{<entryref>}} or @option{--routine=@emph{<entryref>}}: |
The FreeM direct-mode environment is the mode entered when FreeM is invoked without the use of @option{-r @emph{<entryref>}} or @option{--routine=@emph{<entryref>}}: |
|
|
@example |
@example |
Coherent Logic Development FreeM version 0.65.1-rc0 (x86_64-pc-linux-gnu) |
Coherent Logic Development FreeM version 0.65.1-rc1 (x86_64-pc-linux-gnu) |
Copyright (C) 2014, 2020, 2021 Coherent Logic Development LLC |
Copyright (C) 2014, 2020, 2021 Coherent Logic Development LLC |
|
|
|
|
Line 2660 In the above @emph{inclusive} form, @cod
|
Line 2660 In the above @emph{inclusive} form, @cod
|
@cartouche |
@cartouche |
@quotation |
@quotation |
@emph{Note} |
@emph{Note} |
The below @emph{argumentless} and @emph{exclusive} forms of @code{KSUBSCRIPTS} are not implemented in FreeM, as of version 0.65.1-rc0, but are planned for a future release. |
The below @emph{argumentless} and @emph{exclusive} forms of @code{KSUBSCRIPTS} are not implemented in FreeM, as of version 0.65.1-rc1, but are planned for a future release. |
@end quotation |
@end quotation |
@end cartouche |
@end cartouche |
|
|
Line 2695 In the above @emph{inclusive} form, @cod
|
Line 2695 In the above @emph{inclusive} form, @cod
|
@cartouche |
@cartouche |
@quotation |
@quotation |
@emph{Note} |
@emph{Note} |
The below @emph{argumentless} and @emph{exclusive} forms of @code{KVALUE} are not implemented in FreeM, as of version 0.65.1-rc0, but are planned for a future release. |
The below @emph{argumentless} and @emph{exclusive} forms of @code{KVALUE} are not implemented in FreeM, as of version 0.65.1-rc1, but are planned for a future release. |
@end quotation |
@end quotation |
@end cartouche |
@end cartouche |
|
|
Line 3537 ZHALT
|
Line 3537 ZHALT
|
@cindex commands, non-standard |
@cindex commands, non-standard |
@emph{FreeM Extension} |
@emph{FreeM Extension} |
|
|
|
Inserts a line of M code into the currently-active routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. |
|
|
|
@emph{Syntax} |
|
|
|
@example |
|
ZINSERT@emph{:postcondition} @emph{expr V mcode}[:@emph{label}] |
|
@end example |
|
|
|
Above, @emph{expr V mcode} is an expression returning a string giving M code. If @emph{label} is omitted, the code will be inserted at the insertion point, which is typically the end of the routine. Otherwise, the code will be inserted at the line immediately following @emph{label}. |
|
|
@node ZJOB |
@node ZJOB |
@section ZJOB |
@section ZJOB |
@cindex ZJOB |
@cindex ZJOB |
Line 3597 ZMAP[@emph{:postcondition}] GLOBAL @emph
|
Line 3607 ZMAP[@emph{:postcondition}] GLOBAL @emph
|
@cindex commands, non-standard |
@cindex commands, non-standard |
@emph{FreeM Extension} |
@emph{FreeM Extension} |
|
|
Prints the contents of the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. |
In argumentless form, prints the contents of the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. |
|
|
@emph{Syntax} |
@emph{Syntax} |
|
|
Line 3605 Prints the contents of the current routi
|
Line 3615 Prints the contents of the current routi
|
ZPRINT@emph{:postcondition} |
ZPRINT@emph{:postcondition} |
@end example |
@end example |
|
|
|
In argumented form, prints a subset of the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. |
|
|
|
@emph{Syntax} |
|
|
|
@example |
|
ZPRINT@emph{:postcondition} @emph{start}[:@emph{end}] |
|
@end example |
|
|
|
In the above syntax, @emph{start} and @emph{end} can be a tag in the current routine, or @code{*} to indicate the routine buffer insertion point (typically the end of the routine). |
|
|
@node ZQUIT |
@node ZQUIT |
@section ZQUIT |
@section ZQUIT |
@cindex ZQUIT |
@cindex ZQUIT |
Line 3631 In its argumentless form, quits from @co
|
Line 3651 In its argumentless form, quits from @co
|
@cindex commands, non-standard |
@cindex commands, non-standard |
@emph{FreeM Extension} |
@emph{FreeM Extension} |
|
|
|
In argumentless form, removes all M code from the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. |
|
|
|
@emph{Syntax} |
|
|
|
@example |
|
ZREMOVE@emph{:postcondition} |
|
@end example |
|
|
|
In argumented form, removes a subset of the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. |
|
|
|
@emph{Syntax} |
|
|
|
@example |
|
ZREMOVE@emph{:postcondition} @emph{start}[:@emph{end}] |
|
@end example |
|
|
|
In the above syntax, @emph{start} and @emph{end} can be a tag in the current routine, or @code{*} to indicate the routine buffer insertion point (typically the end of the routine). |
|
|
@node ZSAVE |
@node ZSAVE |
@section ZSAVE |
@section ZSAVE |
@cindex ZSAVE |
@cindex ZSAVE |