APL syntax: Difference between revisions
Jump to navigation
Jump to search
Miraheze>Adám Brudzewsky No edit summary |
Miraheze>Adám Brudzewsky m (Adám Brudzewsky moved page Syntactic overview to APL syntax over redirect) |
(No difference)
|
Revision as of 21:41, 16 November 2019
APL's core syntactic principles are:
- Arrays as first class citizens
- Functions take arrays as argument(s) and produce arrays as result
- Functions have long right scope
- Operators take functions and/or arrays as operand(s) and produce derived functions
- Operators have long left scope
Example array definitions
simplenumvec←1 2 3 4 ⍝ A simple numeric vector simplecharvec←'ABCD' ⍝ A simple character vector
Example function definition
∇ r←l Tradfn r [1] ⍝ An infix (dyadic) tradfn [2] r←l r ∇
Example operator definition
∇ r←larg(Main OVER PreProc)rarg [1] r←(PreProc larg)Main(PreProc rarg) ∇
Example function application
÷3 ⍝ Prefix primitive function 0.3333333333 1+2 ⍝ Infix primitive function 3 +/1 2 3 4 ⍝ Prefix primitive derived function 10 2+/1 2 3 4 ⍝ Infix primitive derived function 3 5 7