Migration Level ⎕ML
⎕ML
determines the degree of migration of the Dyalog APL language towards IBM's APL2. Setting this variable to other than its default value of 1
changes the interpretation of certain symbols and language constructs. ⎕ML
has Namespace scope.
⎕ML←0 | Original Native Dyalog | |
⎕ML←1 | Z←∊R | Monadic '∊' is interpreted as 'enlist' rather than 'type'. |
⎕ML←2 | Z←↑R | Monadic '↑' is interpreted as 'first' rather than 'mix'. |
Z←⊃R | Monadic '⊃' is interpreted as 'mix' rather than 'first'. | |
Z←≡R | Monadic '≡' returns a positive rather than a negative value, if its argument has non-uniform depth. | |
⎕ML←3 | R←X⊂[K]Y | Dyadic '⊂' follows the APL2 (rather than the original Dyalog APL) convention. |
⎕TC | The order of the elements of ⎕TC is the same as in APL2. |
Subsequent versions of Dyalog APL may provide further migration levels.
Examples
X←2(3 4)
⎕ML←0
∊X
0 0 0
↑X
2 0
3 4
⊃X
2
≡X
¯2
⎕ML←1
∊X
2 3 4
↑X
2 0
3 4
⊃X
2
≡X
¯2
⎕ML←2
∊X
2 3 4
↑X
2
⊃X
2 0
3 4
≡X
2