[
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 Program Development Cycle
8 Directives
8.1 %DIALECT
9 Intrinsic Special Variables
9.1 $DEVICE
9.2 $DIALECT
9.3 $ECODE
9.4 $ESTACK
9.5 $ETRAP
9.6 $HOROLOG
9.7 $IO
9.8 $JOB
9.9 $KEY
9.10 $PDISPLAY
9.11 $PRINCIPAL
9.12 $REFERENCE
9.13 $QUIT
9.14 $STACK
9.15 $STORAGE
9.16 $SYSTEM
9.17 $TEST
9.18 $TLEVEL
9.19 $WITH
9.20 $X
9.21 $Y
9.22 $ZA
9.23 $ZB
9.24 $ZCONTROLC
9.25 $ZDATE
9.26 $ZERROR
9.27 $ZHOROLOG
9.28 $ZINRPT
9.29 $ZJOB
9.30 $ZLOCAL
9.31 $ZNAME
9.32 $ZPRECISION
9.33 $ZREFERENCE
9.34 $ZSYSTEM
9.35 $ZTIME
9.36 $ZTRAP
9.37 $ZUT
9.38 $ZVERSION
10 Intrinsic Functions
10.1 $ASCII
10.2 $CHAR
10.3 $DATA
10.4 $EXTRACT
10.5 $FIND
10.6 $FNUMBER
10.7 $GET
10.8 $INSTANCEOF
10.9 $JUSTIFY
10.10 $LENGTH
10.11 $NAME
10.12 $NEXT
10.13 $ORDER
10.14 $PIECE
10.15 $QLENGTH
10.16 $QSUBSCRIPT
10.17 $QUERY
10.18 $RANDOM
10.19 $REVERSE
10.20 $SELECT
10.21 $STACK
10.22 $TEXT
10.23 $TRANSLATE
10.24 $TYPE
10.25 $VIEW
10.26 $ZBOOLEAN
10.27 $ZCALL
10.28 $ZCRC
10.29 $ZDATA
10.30 $ZDATE
10.31 $ZEDIT
10.32 $ZHOROLOG
10.33 $ZKEY
10.34 $ZLENGTH
10.35 $ZLSD
10.36 $ZM
10.37 $ZNAME
10.38 $ZNEXT
10.39 $ZORDER
10.40 $ZPIECE
10.41 $ZPREVIOUS
10.42 $ZREPLACE
10.43 $ZSYNTAX
10.44 $ZTIME
11 OBJECT Methods
11.1 $$TONUMBER
11.2 $$TYPE
11.3 $$VALUE
12 STRING Methods
12.1 $$ASCII
12.2 $$DATA
12.3 $$DISTANCE
12.4 $$EXTRACT
12.5 $$FIND
12.6 $$FNUMBER
12.7 $$JUSTIFY
12.8 $$LENGTH
12.9 $$PIECECOUNT
12.10 $$PIECE
12.11 $$REPLACE
12.12 $$REVERSE
12.13 $$TOLOWER
12.14 $$TOUPPER
12.15 $$TRANSLATE
13 Commands
13.1 @
13.2 !
13.3 !!
13.4 ABLOCK
13.5 ASTART
13.6 ASTOP
13.7 AUNBLOCK
13.8 BREAK
13.9 CLOSE
13.10 DO
13.11 ELSE
13.12 FOR
13.13 GOTO
13.14 HALT
13.15 HANG
13.16 IF
13.17 JOB
13.18 KILL
13.19 KSUBSCRIPTS
13.20 KVALUE
13.21 LOCK
13.22 MERGE
13.23 NEW
13.24 OPEN
13.25 QUIT
13.26 READ
13.27 SET
13.28 TCOMMIT
13.29 THEN
13.30 TROLLBACK
13.31 TSTART
13.32 USE
13.33 VIEW
13.34 WRITE
13.35 XECUTE
13.36 ZASSERT
13.37 ZBREAK
13.38 ZCONST
13.39 ZEDIT
13.40 ZGOTO
13.41 ZHALT
13.42 ZINSERT
13.43 ZJOB
13.44 ZLOAD
13.45 ZMAP
13.46 ZNEW
13.47 ZPRINT
13.48 ZQUIT
13.49 ZREMOVE
13.50 ZSAVE
13.51 ZTHROW
13.52 ZTRAP
13.53 ZUNMAP
13.54 ZWATCH
13.55 ZWITH
13.56 ZWRITE
14 Structured System Variables
14.1 ^$CHARACTER
14.2 ^$DEVICE
14.3 ^$DISPLAY
14.4 ^$EVENT
14.5 ^$GLOBAL
14.6 ^$JOB
14.7 ^$LOCK
14.8 ^$OBJECT
14.9 ^$ROUTINE
14.10 ^$SYSTEM
14.11 ^$WINDOW
14.12 ^$ZPROCESS
14.13 ^$ZRPI
15 Operators
15.1 Unary +
15.2 Unary -
15.3 + (Add)
15.4 += (Add/Assign)
15.5 ++ (Postfix Increment)
15.6 - (Subtract)
15.7 -= (Subtract/Assign)
15.8 – (Postfix Decrement)
15.9 * (Multiply)
15.10 *= (Multiply/Assign)
15.11 / (Divide)
15.12 /= (Divide/Assign)
15.13 \ (Integer Divide)
15.14 \= (Integer Divide/Assign)
15.15 # (Modulo)
15.16 #= (Modulo/Assign)
15.17 ** (Exponentiate)
15.18 **= (Exponentiate/Assign)
15.19 < (Less Than)
15.20 <= (Less Than or Equal To)
15.21 > (Greater Than)
15.22 >= (Greater Than or Equal To)
15.23 _ (Concatenate)
15.24 _= (Concatenate/Assign)
15.25 = (Equals)
15.26 [ (Contains)
15.27 ] (Follows)
15.28 ]] (Sorts After)
15.29 ? (Pattern Match)
15.30 & (Logical AND)
15.31 ! (Logical OR)
15.32 ’ (Logical NOT)
15.33 @ (Indirect)
16 Routines
16.1 Routine Naming
17 Types
17.1 BOOLEAN
17.2 COMPLEX
17.3 INTEGER
17.4 REAL
17.5 STRING
17.5.1 String Rules
17.5.2 String Quoting Rules
17.6 Custom Types (Classes)
18 Globals
18.1 Globals Overview
18.2 Creating Globals
18.3 Removing Globals
18.4 Global Storage
19 Concurrency Control
19.1 Concurrency Control Overview
19.2 Advisory Locks
19.3 Transaction Processing
19.3.1 Theory of Operation
19.3.2 Using Transaction Processing
19.3.2.1 BATCH Transactions
19.3.2.2 SERIAL Transactions
20 Local Variables
20.1 Local Variables Overview
20.2 Creating Local Variables
20.3 Removing Local Variables
21 Scoping
21.1 Scoping Considerations for $TEST
22 Decision Constructs
23 Branch Constructs
24 Loop Constructs
25 Modular Programming
25.1 Subroutines
25.2 Extrinsic Functions
26 Object-Oriented Programming
26.1 Classes
26.1.1 Class Overview
26.1.2 Constructors
26.1.3 Destructors
26.2 Inheritance
26.2.1 Runtime Polymorphism
26.3 Methods
26.4 Public and Private Variables
26.5 Instantiating Objects
26.5.1 Determining Object Class
27 Libraries
28 Sequential I/O
29 Network I/O
29.1 Opening and Connecting a Client Socket
30 Extended Global References
30.1 Standard Extended Global References
31 Global Aliasing
32 Global Mappings
33 Asynchronous Event Handling
33.1 Setting Up Async Event Handlers
33.2 Registering an Asynchronous Event Handler
33.3 Enabling Asynchronous Event Handling
33.4 Disabling Asynchronous Event Handling
33.5 Temporarily Blocking Asynchronous Event Handling
34 Global Triggers
35 Synchronous Event Handling
36 GUI Programming with MWAPI
37 User-Defined Z Commands
38 User-Defined Z Functions
39 User-Defined SSVNs
40 Language Dialects
41 System Library Routines
41.1 ^%ZCOLUMNS
41.2 %SYSINIT
41.3 ^%ZHELP
41.4 ^%ZROWS
42 Interrupt Handling
43 Error Processing
44 FreeM Error Codes
45 System Configuration
45.1 Installing FreeM
45.1.1 Installation Methods
45.1.2 Build Configuration
45.1.3 Initial Configuration
45.1.3.1 Creating Additional Environments
45.1.3.2 Additional Customization
46 Accessing FreeM from C Programs
46.1 freem_ref_t Data Structure
46.2 freem_ent_t Data Structure
46.3 freem_init()
46.4 freem_version()
46.5 freem_set()
46.6 freem_get()
46.7 freem_kill()
46.8 freem_data()
46.9 freem_order()
46.10 freem_query()
46.11 freem_lock()
46.12 freem_unlock()
46.13 freem_tstart()
46.14 freem_trestart()
46.15 freem_trollback()
46.16 freem_tlevel()
46.17 freem_tcommit()
46.18 freem_function()
46.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 19, 2025
using
texi2html 5.0
.