[
Top
]
[
Contents
]
[
Index
]
[
?
]
Table of Contents
Introduction
0.1 Production Readiness
0.2 Contributors
1 Document Conventions
1.1 Formatting Conventions
1.2 Definitions
2 A Note on Standards
3 FreeM Invocation
3.1 Synopsis
3.2 %SYSINIT Routine
3.3 Command-Line Options
3.4 Using FreeM for Shell Scripting
4 The FreeM Environment Daemon
5 The FreeM Direct-Mode Environment
5.1 Direct-Mode Commands
5.2 REPL Functionality
6 Debugging
6.1 Debugging Synopsis
6.2 Debugging Commands
7 Directives
7.1 %DIALECT
8 Intrinsic Special Variables
8.1 $DEVICE
8.2 $DIALECT
8.3 $ECODE
8.4 $ESTACK
8.5 $ETRAP
8.6 $HOROLOG
8.7 $IO
8.8 $JOB
8.9 $KEY
8.10 $PDISPLAY
8.11 $PRINCIPAL
8.12 $REFERENCE
8.13 $QUIT
8.14 $STACK
8.15 $STORAGE
8.16 $SYSTEM
8.17 $TEST
8.18 $TLEVEL
8.19 $WITH
8.20 $X
8.21 $Y
8.22 $ZA
8.23 $ZB
8.24 $ZCONTROLC
8.25 $ZDATE
8.26 $ZERROR
8.27 $ZHOROLOG
8.28 $ZINRPT
8.29 $ZJOB
8.30 $ZLOCAL
8.31 $ZNAME
8.32 $ZPRECISION
8.33 $ZREFERENCE
8.34 $ZSYSTEM
8.35 $ZTIME
8.36 $ZTRAP
8.37 $ZUT
8.38 $ZVERSION
9 Intrinsic Functions
9.1 $ASCII
9.2 $CHAR
9.3 $DATA
9.4 $EXTRACT
9.5 $FIND
9.6 $FNUMBER
9.7 $GET
9.8 $INSTANCEOF
9.9 $JUSTIFY
9.10 $LENGTH
9.11 $NAME
9.12 $NEXT
9.13 $ORDER
9.14 $PIECE
9.15 $QLENGTH
9.16 $QSUBSCRIPT
9.17 $QUERY
9.18 $RANDOM
9.19 $REVERSE
9.20 $SELECT
9.21 $STACK
9.22 $TEXT
9.23 $TRANSLATE
9.24 $TYPE
9.25 $VIEW
9.26 $ZBOOLEAN
9.27 $ZCALL
9.28 $ZCRC
9.29 $ZDATA
9.30 $ZDATE
9.31 $ZEDIT
9.32 $ZHOROLOG
9.33 $ZKEY
9.34 $ZLENGTH
9.35 $ZLSD
9.36 $ZM
9.37 $ZNAME
9.38 $ZNEXT
9.39 $ZORDER
9.40 $ZPIECE
9.41 $ZPREVIOUS
9.42 $ZREPLACE
9.43 $ZSYNTAX
9.44 $ZTIME
10 OBJECT Methods
10.1 $$TONUMBER
10.2 $$TYPE
10.3 $$VALUE
11 STRING Methods
11.1 $$ASCII
11.2 $$DATA
11.3 $$DISTANCE
11.4 $$EXTRACT
11.5 $$FIND
11.6 $$FNUMBER
11.7 $$JUSTIFY
11.8 $$LENGTH
11.9 $$PIECECOUNT
11.10 $$PIECE
11.11 $$REPLACE
11.12 $$REVERSE
11.13 $$TOLOWER
11.14 $$TOUPPER
11.15 $$TRANSLATE
12 Commands
12.1 @
12.2 !
12.3 !!
12.4 ABLOCK
12.5 ASTART
12.6 ASTOP
12.7 AUNBLOCK
12.8 BREAK
12.9 CLOSE
12.10 DO
12.11 ELSE
12.12 FOR
12.13 GOTO
12.14 HALT
12.15 HANG
12.16 IF
12.17 JOB
12.18 KILL
12.19 KSUBSCRIPTS
12.20 KVALUE
12.21 LOCK
12.22 MERGE
12.23 NEW
12.24 OPEN
12.25 QUIT
12.26 READ
12.27 SET
12.28 TCOMMIT
12.29 THEN
12.30 TROLLBACK
12.31 TSTART
12.32 USE
12.33 VIEW
12.34 WRITE
12.35 XECUTE
12.36 ZASSERT
12.37 ZBREAK
12.38 ZCONST
12.39 ZGOTO
12.40 ZHALT
12.41 ZINSERT
12.42 ZJOB
12.43 ZLOAD
12.44 ZMAP
12.45 ZNEW
12.46 ZPRINT
12.47 ZQUIT
12.48 ZREMOVE
12.49 ZSAVE
12.50 ZTHROW
12.51 ZTRAP
12.52 ZUNMAP
12.53 ZWATCH
12.54 ZWITH
12.55 ZWRITE
13 Structured System Variables
13.1 ^$CHARACTER
13.2 ^$DEVICE
13.3 ^$DISPLAY
13.4 ^$EVENT
13.5 ^$GLOBAL
13.6 ^$JOB
13.7 ^$LOCK
13.8 ^$OBJECT
13.9 ^$ROUTINE
13.10 ^$SYSTEM
13.11 ^$WINDOW
13.12 ^$ZPROCESS
13.13 ^$ZRPI
14 Operators
14.1 Unary +
14.2 Unary -
14.3 + (Add)
14.4 += (Add/Assign)
14.5 ++ (Postfix Increment)
14.6 - (Subtract)
14.7 -= (Subtract/Assign)
14.8 – (Postfix Decrement)
14.9 * (Multiply)
14.10 *= (Multiply/Assign)
14.11 / (Divide)
14.12 /= (Divide/Assign)
14.13 \ (Integer Divide)
14.14 \= (Integer Divide/Assign)
14.15 # (Modulo)
14.16 #= (Modulo/Assign)
14.17 ** (Exponentiate)
14.18 **= (Exponentiate/Assign)
14.19 < (Less Than)
14.20 <= (Less Than or Equal To)
14.21 > (Greater Than)
14.22 >= (Greater Than or Equal To)
14.23 _ (Concatenate)
14.24 _= (Concatenate/Assign)
14.25 = (Equals)
14.26 [ (Contains)
14.27 ] (Follows)
14.28 ]] (Sorts After)
14.29 ? (Pattern Match)
14.30 & (Logical AND)
14.31 ! (Logical OR)
14.32 ’ (Logical NOT)
14.33 @ (Indirect)
15 Routines
15.1 Routine Naming
16 Types
16.1 BOOLEAN
16.2 COMPLEX
16.3 INTEGER
16.4 REAL
16.5 STRING
16.5.1 String Rules
16.5.2 String Quoting Rules
16.6 Custom Types (Classes)
17 Globals
17.1 Globals Overview
17.2 Creating Globals
17.3 Removing Globals
17.4 Global Storage
18 Concurrency Control
18.1 Concurrency Control Overview
18.2 Advisory Locks
18.3 Transaction Processing
18.3.1 Theory of Operation
18.3.2 Using Transaction Processing
18.3.2.1 BATCH Transactions
18.3.2.2 SERIAL Transactions
19 Local Variables
19.1 Local Variables Overview
19.2 Creating Local Variables
19.3 Removing Local Variables
20 Scoping
20.1 Scoping Considerations for $TEST
21 Decision Constructs
22 Branch Constructs
23 Loop Constructs
24 Modular Programming
24.1 Subroutines
24.2 Extrinsic Functions
25 Object-Oriented Programming
25.1 Classes
25.1.1 Class Overview
25.1.2 Constructors
25.1.3 Destructors
25.2 Inheritance
25.2.1 Runtime Polymorphism
25.3 Methods
25.4 Public and Private Variables
25.5 Instantiating Objects
25.5.1 Determining Object Class
26 Libraries
27 Sequential I/O
28 Network I/O
28.1 Opening and Connecting a Client Socket
29 Extended Global References
29.1 Standard Extended Global References
30 Global Aliasing
31 Global Mappings
32 Asynchronous Event Handling
32.1 Setting Up Async Event Handlers
32.2 Registering an Asynchronous Event Handler
32.3 Enabling Asynchronous Event Handling
32.4 Disabling Asynchronous Event Handling
32.5 Temporarily Blocking Asynchronous Event Handling
33 Global Triggers
34 Synchronous Event Handling
35 GUI Programming with MWAPI
36 User-Defined Z Commands
37 User-Defined Z Functions
38 User-Defined SSVNs
39 Language Dialects
40 System Library Routines
40.1 ^%ZCOLUMNS
40.2 %SYSINIT
40.3 ^%ZHELP
40.4 ^%ZROWS
41 Interrupt Handling
42 Error Processing
43 FreeM Error Codes
44 System Configuration
44.1 Installing FreeM
44.1.1 Installation Methods
44.1.2 Build Configuration
44.1.3 Initial Configuration
44.1.3.1 Creating Additional Environments
44.1.3.2 Additional Customization
45 Accessing FreeM from C Programs
45.1 freem_ref_t Data Structure
45.2 freem_ent_t Data Structure
45.3 freem_init()
45.4 freem_version()
45.5 freem_set()
45.6 freem_get()
45.7 freem_kill()
45.8 freem_data()
45.9 freem_order()
45.10 freem_query()
45.11 freem_lock()
45.12 freem_unlock()
45.13 freem_tstart()
45.14 freem_trestart()
45.15 freem_trollback()
45.16 freem_tlevel()
45.17 freem_tcommit()
45.18 freem_function()
45.19 freem_procedure()
Appendix A FreeM Administrator
Appendix B FreeM VIEW Commands and Functions
B.1 VIEW 16: Total Count of Error Messages/View Single Error Message
B.2 VIEW 17: Intrinsic Z-Commands
B.3 VIEW 18: Intrinsic Z-Functions
B.4 VIEW 19: Intrinsic Special Variables
B.5 VIEW 20: Break Service Code
B.6 VIEW 21: View Size of Last Global
B.7 VIEW 22: Count VIEW 22 Aliases
B.8 VIEW 23: View Contents of Input Buffer
B.9 VIEW 24: Maximum Number of Screen Rows
B.10 VIEW 25: Maximum Number of Screen Columns
B.11 VIEW 26: DO/FOR/XECUTE Stack Pointer
B.12 VIEW 27: DO/FOR/XECUTE Stack Pointer (On Error)
B.13 VIEW 29: Copy Symbol Table
B.14 VIEW 30: Inspect Arguments
B.15 VIEW 31: Count Environment Variables
Appendix C Implementation Limits
Appendix D US-ASCII Character Set
Appendix E FreeM Project Coding Standards
E.1 Module Headers
E.2 Variable Naming
E.3 Indentation and General Layout
E.4 Brace Placement (Functions)
E.5 Brace Placement (if-for-while-do)
E.6 Labels and goto
E.7 Preprocessor Conditionals
E.8 coding standards, preprocessor conditionals
E.9 Overall Program Spacing
E.10 The switch() Statement
E.11 Comments
Index
[
Top
]
[
Contents
]
[
Index
]
[
?
]
This document was generated on
May 5, 2025
using
texi2html 5.0
.