|
|
| version 1.2, 2025/02/26 13:22:29 | version 1.17, 2025/04/04 02:40:32 |
|---|---|
| Line 4 | Line 4 |
| @settitle The FreeM Manual | @settitle The FreeM Manual |
| @copying | @copying |
| This manual is for FreeM, (version 0.61.2), which is a free and open-source implementation of the M programming language. | This manual is for FreeM, (version 0.63.0), which is a free and open-source implementation of the M programming language. |
| Copyright @copyright{} 2014-2024 Coherent Logic Development LLC | Copyright @copyright{} 2014-2025 Coherent Logic Development LLC |
| @quotation | @quotation |
| Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover texts, and with no Back-Cover Texts. | Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover texts, and with no Back-Cover Texts. |
| Line 18 Permission is granted to copy, distribut | Line 18 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.61.2 | @subtitle Version 0.63.0 |
| @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 369 Attempting to start a FreeM interpreter | Line 369 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.61.2 (x86_64-pc-linux-gnu) | Coherent Logic Development FreeM version 0.63.0 (x86_64-pc-linux-gnu) |
| Copyright (C) 2014, 2020, 2021 Coherent Logic Development LLC | Copyright (C) 2014, 2020, 2021 Coherent Logic Development LLC |
| Line 2434 In the above @emph{inclusive} form, @cod | Line 2434 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.61.2, 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.63.0, but are planned for a future release. |
| @end quotation | @end quotation |
| @end cartouche | @end cartouche |
| Line 6015 WRITE $VIEW(31),! | Line 6015 WRITE $VIEW(31),! |
| @section Module Headers | @section Module Headers |
| @cindex coding standards, module headers | @cindex coding standards, module headers |
| Module headers should adhere to the following format: | Module headers should adhere to the following format (where @code{Dollar} should be replaced with a dollar sign): |
| @verbatim | @verbatim |
| /* | /* |
| * * | * DollarIdDollar |
| * * * | |
| * * * | |
| * *************** | |
| * * * * * | |
| * * MUMPS * | |
| * * * * * | |
| * *************** | |
| * * * | |
| * * * | |
| * * | |
| * | |
| * mlib.h | |
| * Function prototypes, structs, and macros for FreeM | * Function prototypes, structs, and macros for FreeM |
| * binding library | * binding library |
| * | * |
| * | * |
| * Author: Serena Willis <jpw@coherent-logic.com> | * Author: Serena Willis <jpw@coherent-logic.com> |
| * Copyright (C) 1998 MUG Deutschland | * Copyright (C) 1998 MUG Deutschland |
| * Copyright (C) 2020 Coherent Logic Development LLC | * Copyright (C) <Year> Coherent Logic Development LLC |
| * | |
| * This file is part of FreeM. | |
| * | |
| * FreeM is free software: you can redistribute it and/or modify | |
| * it under the terms of the GNU Affero Public License as published by | |
| * the Free Software Foundation, either version 3 of the License, or | |
| * (at your option) any later version. | |
| * | |
| * FreeM is distributed in the hope that it will be useful, | |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| * GNU Affero Public License for more details. | |
| * | |
| * You should have received a copy of the GNU Affero Public License | |
| * along with FreeM. If not, see <https://www.gnu.org/licenses/>. | |
| * | |
| * DollarLogDollar | |
| * | * |
| * Last modified: 29 February 2020 | * SPDX-FileCopyrightText: (C) 2025 Coherent Logic Development LLC |
| * | * SPDX-License-Identifier: AGPL-3.0-or-later |
| **/ | **/ |
| @end verbatim | @end verbatim |
| @cindex ha-Ashkenaz, Shalom | |
| The Star of David in module headers is a convention started by Shalom ha-Ashkenaz, the unidentified original author of FreeMUMPS/FreeM. We will continue to employ it in honor of his most valuable contribution to the M community. | |
| @section Variable Naming | @section Variable Naming |
| @cindex coding standards, variable naming | @cindex coding standards, variable naming |