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 Computer Modern by the author using the GNU Texinfo tools.
Copyright © 2014-2025 Coherent Logic Development LLC
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.
[ < ] | [ > ] | [Contents] | [Index] | [ ? ] |
This is the official manual for the FreeM programming language.
Introduction | About the FreeM Project, its history, and its goals. | |
1 Document Conventions | Conventions used in this manual. | |
2 A Note on Standards | FreeM positioning regarding the M Development Committee. | |
3 FreeM Invocation | How to invoke FreeM from the command line. | |
4 The FreeM Environment Daemon | Managing shared resources in the FreeM environment. | |
5 The FreeM Direct-Mode Environment | Executing M programs interactively. | |
6 Debugging | The program development cycle of FreeM. | |
7 Program Development Cycle | How to create, edit, test, and run FreeM programs. | |
8 Directives | Per-Routine Language Directives. | |
9 Intrinsic Special Variables | ||
10 Intrinsic Functions | ||
11 OBJECT Methods | Methods for OBJECT variables. | |
12 STRING Methods | Methods for STRING variables. | |
13 Commands | ||
14 Structured System Variables | ||
15 Operators | FreeM Operators. | |
16 Routines | The units of M code in FreeM. | |
17 Types | FreeM data types. | |
18 Globals | FreeM persistent sparse arrays. | |
19 Concurrency Control | LOCK ing and transaction processing.
| |
20 Local Variables | In-memory variables. | |
21 Scoping | Scoping in FreeM. | |
22 Decision Constructs | IF , THEN , ELSE , $SELECT , and postconditionals.
| |
23 Branch Constructs | Labels, GOTO , DO , and JOB .
| |
24 Loop Constructs | The FOR loop.
| |
25 Modular Programming | Extrinsic functions and subroutines. | |
26 Object-Oriented Programming | Classes and objects in FreeM. | |
27 Libraries | System and user libraries. | |
28 Sequential I/O | Processing sequential files in FreeM. | |
29 Network I/O | Handling network sockets in FreeM. | |
30 Extended Global References | Accessing globals in non-default namespaces. | |
31 Global Aliasing | Defining alternate names for globals. | |
32 Global Mappings | Mapping global names to non-default namespaces. | |
33 Asynchronous Event Handling | Handling asynchronous events in FreeM. | |
34 Global Triggers | Responding to global accesses in M code. | |
35 Synchronous Event Handling | Synchronous events in FreeM. | |
36 GUI Programming with MWAPI | Creating graphical interfaces in FreeM. | |
37 User-Defined Z Commands | Adding your own Z commands to FreeM. | |
38 User-Defined Z Functions | Adding your own Z functions to FreeM. | |
39 User-Defined SSVNs | Adding your own SSVNs to FreeM. | |
40 Language Dialects | Controlling FreeM standards compliance. | |
41 System Library Routines | FreeM built-in library of M routines. | |
42 Interrupt Handling | How FreeM handles interrupts. | |
43 Error Processing | How to handle errors in M program code. | |
44 FreeM Error Codes | Explanations of each FreeM error code. | |
45 System Configuration | Configuring your FreeM installation. | |
46 Accessing FreeM from C Programs | How to use the mlib interface. | |
Appendix A FreeM Administrator | The fmadm system manager tool. | |
Appendix B FreeM VIEW Commands and Functions | Getting and setting info about FreeM internals. | |
Appendix C Implementation Limits | FreeM limitations. | |
Appendix D US-ASCII Character Set | The US-ASCII character set. | |
Appendix E FreeM Project Coding Standards | How to write code for submission to the FreeM project. | |
Index | Complete index. |
[ < ] | [ > ] | [Contents] | [Index] | [ ? ] |
This document was generated on May 19, 2025 using texi2html 5.0.