4,493
edits
m (Text replacement - "<source" to "<syntaxhighlight") |
m (Text replacement - "</source>" to "</syntaxhighlight>") |
||
Line 1: | Line 1: | ||
A '''scalar function''' is one of a class of [[primitive function]]s that apply to [[argument]]s one [[element]] at a time. [[Dyadic]] scalar functions pair elements of their arguments based on [[conformability]] rules, and thus are subject to [[scalar extension]]. In [[Nested array model|nested]] array languages, scalar functions [[pervasion|pervade]] any [[nested array]]s by [[recursion|recursively]] descending into them until reaching [[simple scalars]]; in [[Flat array model|flat]] array languages they usually do not apply inside [[boxes]]. Functions which are not scalar, are called [[mixed function]]s. | A '''scalar function''' is one of a class of [[primitive function]]s that apply to [[argument]]s one [[element]] at a time. [[Dyadic]] scalar functions pair elements of their arguments based on [[conformability]] rules, and thus are subject to [[scalar extension]]. In [[Nested array model|nested]] array languages, scalar functions [[pervasion|pervade]] any [[nested array]]s by [[recursion|recursively]] descending into them until reaching [[simple scalars]]; in [[Flat array model|flat]] array languages they usually do not apply inside [[boxes]]. Functions which are not scalar, are called [[mixed function]]s. | ||
Only a particular [[valence]] of a function is labelled "scalar". The scalar monad [[Not]] usually shares the glyph <syntaxhighlight lang=apl inline>~</ | Only a particular [[valence]] of a function is labelled "scalar". The scalar monad [[Not]] usually shares the glyph <syntaxhighlight lang=apl inline>~</syntaxhighlight> with non-scalar dyad [[Without]], and similarly scalar [[Roll]] and non-scalar [[Deal]] are both written <syntaxhighlight lang=apl inline>?</syntaxhighlight>. | ||
== Standard scalar functions == | == Standard scalar functions == | ||
Line 10: | Line 10: | ||
! Monadic function !! Glyph !! Dyadic function | ! Monadic function !! Glyph !! Dyadic function | ||
|- | |- | ||
| [[Conjugate]] || <syntaxhighlight lang=apl inline>+</ | | [[Conjugate]] || <syntaxhighlight lang=apl inline>+</syntaxhighlight> || [[Plus]] | ||
|- | |- | ||
| [[Negate]] || <syntaxhighlight lang=apl inline>-</ | | [[Negate]] || <syntaxhighlight lang=apl inline>-</syntaxhighlight> || [[Minus]] | ||
|- | |- | ||
| [[Signum]] or Direction || <syntaxhighlight lang=apl inline>×</ | | [[Signum]] or Direction || <syntaxhighlight lang=apl inline>×</syntaxhighlight> || [[Times]] | ||
|- | |- | ||
| [[Reciprocal]] || <syntaxhighlight lang=apl inline>÷</ | | [[Reciprocal]] || <syntaxhighlight lang=apl inline>÷</syntaxhighlight> || [[Divide]] | ||
|- | |- | ||
| [[Floor]] || <syntaxhighlight lang=apl inline>⌊</ | | [[Floor]] || <syntaxhighlight lang=apl inline>⌊</syntaxhighlight> || [[Minimum]] | ||
|- | |- | ||
| [[Ceiling]] || <syntaxhighlight lang=apl inline>⌈</ | | [[Ceiling]] || <syntaxhighlight lang=apl inline>⌈</syntaxhighlight> || [[Maximum]] | ||
|- | |- | ||
| [[Exponential]] || <syntaxhighlight lang=apl inline>*</ | | [[Exponential]] || <syntaxhighlight lang=apl inline>*</syntaxhighlight> || [[Power function]] | ||
|- | |- | ||
| [[Natural Logarithm]] || <syntaxhighlight lang=apl inline>⍟</ | | [[Natural Logarithm]] || <syntaxhighlight lang=apl inline>⍟</syntaxhighlight> || [[Logarithm]] | ||
|- | |- | ||
| [[Magnitude]] or Absolute value || <syntaxhighlight lang=apl inline>|</ | | [[Magnitude]] or Absolute value || <syntaxhighlight lang=apl inline>|</syntaxhighlight> || [[Residue]] | ||
|- | |- | ||
| [[Pi Times]] || <syntaxhighlight lang=apl inline>○</ | | [[Pi Times]] || <syntaxhighlight lang=apl inline>○</syntaxhighlight> || [[Circle function]] | ||
|- | |- | ||
| [[Factorial]] || <syntaxhighlight lang=apl inline>!</ | | [[Factorial]] || <syntaxhighlight lang=apl inline>!</syntaxhighlight> || [[Binomial]] coefficient or combination function | ||
|- | |- | ||
| [[Roll]] || <syntaxhighlight lang=apl inline>?</ | | [[Roll]] || <syntaxhighlight lang=apl inline>?</syntaxhighlight> || | ||
|- | |- | ||
| [[Not]] || <syntaxhighlight lang=apl inline>~</ | | [[Not]] || <syntaxhighlight lang=apl inline>~</syntaxhighlight> || | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>∧</ | | || <syntaxhighlight lang=apl inline>∧</syntaxhighlight> || [[Logical And]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>∨</ | | || <syntaxhighlight lang=apl inline>∨</syntaxhighlight> || [[Logical Or]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>⍲</ | | || <syntaxhighlight lang=apl inline>⍲</syntaxhighlight> || [[Nand]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>⍱</ | | || <syntaxhighlight lang=apl inline>⍱</syntaxhighlight> || [[Nor]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline><</ | | || <syntaxhighlight lang=apl inline><</syntaxhighlight> || [[Less than]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>≤</ | | || <syntaxhighlight lang=apl inline>≤</syntaxhighlight> || [[Less than or equal to]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>=</ | | || <syntaxhighlight lang=apl inline>=</syntaxhighlight> || [[Equal to]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>≥</ | | || <syntaxhighlight lang=apl inline>≥</syntaxhighlight> || [[Greater than or equal to]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>></ | | || <syntaxhighlight lang=apl inline>></syntaxhighlight> || [[Greater than]] | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>≠</ | | || <syntaxhighlight lang=apl inline>≠</syntaxhighlight> || [[Not equal to]] | ||
|} | |} | ||
Line 63: | Line 63: | ||
! Monadic function !! Glyph !! Dyadic function | ! Monadic function !! Glyph !! Dyadic function | ||
|- | |- | ||
| [[Square Root]] || <syntaxhighlight lang=apl inline>√</ | | [[Square Root]] || <syntaxhighlight lang=apl inline>√</syntaxhighlight> || [[Nth Root]] | ||
|- | |- | ||
| [[Type]] || <syntaxhighlight lang=apl inline>∊</ | | [[Type]] || <syntaxhighlight lang=apl inline>∊</syntaxhighlight> or <syntaxhighlight lang=apl inline>⊤</syntaxhighlight> || | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>∧</ | | || <syntaxhighlight lang=apl inline>∧</syntaxhighlight> || [[Lowest Common Multiple]] (LCM) | ||
|- | |- | ||
| || <syntaxhighlight lang=apl inline>∨</ | | || <syntaxhighlight lang=apl inline>∨</syntaxhighlight> || [[Greatest Common Divisor]] (GCD) | ||
|- | |- | ||
| [[Case fold]] || <syntaxhighlight lang=apl inline>⎕C</ | | [[Case fold]] || <syntaxhighlight lang=apl inline>⎕C</syntaxhighlight> || [[Case map]] | ||
|- | |- |