Language Features
From NARS2000
At the moment, the following sections describe only those language features that are New or Enhanced relative to the Extended APL Standard, or that deserve special comment.
Syntax
- Strand Assignment: (A1 A2 ... An)←R
- Modify Assignment: Af←R
- Modify Strand Assignment: (A1 A2 ... An)f←R
- Function/Operator Assignment: A←f, A←op1, A←op2
- Sink: ←A
- Comment Marker: ⍝
Primitive functions
- Index Generator: ⍳R
- Index Of: L⍳R
- Indexing: R[L], R[L]←A, R[L]f←A, L⌷R, L⊃R
- Matrix Inverse/Divide: ⌹R, L⌹R
- Without: L~R
Primitive operators
- Axis: f[X], f op1[X], f op2[X]g
- Composition: f∘g, f∘R, L∘g
- Null: f⊙
- Rank: f⍤X
- Rank with Axis: f⍥[X]
Datatypes
- Infinity: ∞ and ¯∞
- Arithmetic Progression Arrays: 2 3 4⍴⍳24
- Unicode Characters
System Functions
- ⎕AF (Atomic Function) Synonymous with ⎕UCS
- ⎕CR (Canonical Representation)
- ⎕DM (Diagnostic Message)
- ⎕DR (Data Representation)
- ⎕ERROR (Error Signal)
- ⎕SIZE (Object Size)
- ⎕SYSID (System Identifier)
- ⎕SYSVER (System Version)
- ⎕TC/⎕TCxxx (Terminal Control)
- ⎕TYPE (Prototype)
- ⎕UCS (Universal Character Set)
System Variables
- Scalar System Variables (⎕CT, ⎕IO, ⎕PP, ⎕PW, ⎕RL)
- ⎕FC (Format Control)
- ⎕IC (Indeterminate Control)