Scalar function: Difference between revisions

Jump to navigation Jump to search
279 bytes added ,  20:55, 10 September 2022
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 <source lang=apl inline>~</source> with non-scalar dyad [[Without]], and similarly scalar [[Roll]] and non-scalar [[Deal]] are both written <source lang=apl inline>?</source>.
Only a particular [[valence]] of a function is labelled "scalar". The scalar monad [[Not]] usually shares the glyph <syntaxhighlight lang=apl inline>~</source> with non-scalar dyad [[Without]], and similarly scalar [[Roll]] and non-scalar [[Deal]] are both written <syntaxhighlight lang=apl inline>?</source>.


== Standard scalar functions ==
== Standard scalar functions ==
Line 10: Line 10:
! Monadic function !! Glyph !! Dyadic function
! Monadic function !! Glyph !! Dyadic function
|-
|-
| [[Conjugate]] || <source lang=apl inline>+</source> || [[Plus]]
| [[Conjugate]] || <syntaxhighlight lang=apl inline>+</source> || [[Plus]]
|-
|-
| [[Negate]] || <source lang=apl inline>-</source> || [[Minus]]
| [[Negate]] || <syntaxhighlight lang=apl inline>-</source> || [[Minus]]
|-
|-
| [[Signum]] or Direction || <source lang=apl inline>×</source> || [[Times]]
| [[Signum]] or Direction || <syntaxhighlight lang=apl inline>×</source> || [[Times]]
|-
|-
| [[Reciprocal]] || <source lang=apl inline>÷</source> || [[Divide]]
| [[Reciprocal]] || <syntaxhighlight lang=apl inline>÷</source> || [[Divide]]
|-
|-
| [[Floor]] || <source lang=apl inline>⌊</source> || [[Minimum]]
| [[Floor]] || <syntaxhighlight lang=apl inline>⌊</source> || [[Minimum]]
|-
|-
| [[Ceiling]] || <source lang=apl inline>⌈</source> || [[Maximum]]
| [[Ceiling]] || <syntaxhighlight lang=apl inline>⌈</source> || [[Maximum]]
|-
|-
| [[Exponential]] || <source lang=apl inline>*</source> || [[Power function]]
| [[Exponential]] || <syntaxhighlight lang=apl inline>*</source> || [[Power function]]
|-
|-
| [[Natural Logarithm]] || <source lang=apl inline>⍟</source> || [[Logarithm]]
| [[Natural Logarithm]] || <syntaxhighlight lang=apl inline>⍟</source> || [[Logarithm]]
|-
|-
| [[Magnitude]] or Absolute value || <source lang=apl inline>|</source> || [[Residue]]
| [[Magnitude]] or Absolute value || <syntaxhighlight lang=apl inline>|</source> || [[Residue]]
|-
|-
| [[Pi Times]] || <source lang=apl inline>○</source> || [[Circle function]]
| [[Pi Times]] || <syntaxhighlight lang=apl inline>○</source> || [[Circle function]]
|-
|-
| [[Factorial]] || <source lang=apl inline>!</source> || [[Binomial]] coefficient or combination function
| [[Factorial]] || <syntaxhighlight lang=apl inline>!</source> || [[Binomial]] coefficient or combination function
|-
|-
| [[Roll]] || <source lang=apl inline>?</source> ||
| [[Roll]] || <syntaxhighlight lang=apl inline>?</source> ||
|-
|-
| [[Not]] || <source lang=apl inline>~</source> ||
| [[Not]] || <syntaxhighlight lang=apl inline>~</source> ||
|-
|-
| || <source lang=apl inline>∧</source> || [[Logical And]]
| || <syntaxhighlight lang=apl inline>∧</source> || [[Logical And]]
|-
|-
| || <source lang=apl inline>∨</source> || [[Logical Or]]
| || <syntaxhighlight lang=apl inline>∨</source> || [[Logical Or]]
|-
|-
| || <source lang=apl inline>⍲</source> || [[Nand]]
| || <syntaxhighlight lang=apl inline>⍲</source> || [[Nand]]
|-
|-
| || <source lang=apl inline>⍱</source> || [[Nor]]
| || <syntaxhighlight lang=apl inline>⍱</source> || [[Nor]]
|-
|-
| || <source lang=apl inline><</source> || [[Less than]]
| || <syntaxhighlight lang=apl inline><</source> || [[Less than]]
|-
|-
| || <source lang=apl inline>≤</source> || [[Less than or equal to]]
| || <syntaxhighlight lang=apl inline>≤</source> || [[Less than or equal to]]
|-
|-
| || <source lang=apl inline>=</source> || [[Equal to]]
| || <syntaxhighlight lang=apl inline>=</source> || [[Equal to]]
|-
|-
| || <source lang=apl inline>≥</source> || [[Greater than or equal to]]
| || <syntaxhighlight lang=apl inline>≥</source> || [[Greater than or equal to]]
|-
|-
| || <source lang=apl inline>></source> || [[Greater than]]
| || <syntaxhighlight lang=apl inline>></source> || [[Greater than]]
|-
|-
| || <source lang=apl inline>≠</source> || [[Not equal to]]
| || <syntaxhighlight lang=apl inline>≠</source> || [[Not equal to]]
|}
|}


Line 63: Line 63:
! Monadic function !! Glyph !! Dyadic function
! Monadic function !! Glyph !! Dyadic function
|-
|-
| [[Square Root]] || <source lang=apl inline>√</source> || [[Nth Root]]
| [[Square Root]] || <syntaxhighlight lang=apl inline>√</source> || [[Nth Root]]
|-
|-
| [[Type]] || <source lang=apl inline>∊</source> or <source lang=apl inline>⊤</source> ||
| [[Type]] || <syntaxhighlight lang=apl inline>∊</source> or <syntaxhighlight lang=apl inline>⊤</source> ||
|-
|-
| || <source lang=apl inline>∧</source> || [[Lowest Common Multiple]] (LCM)
| || <syntaxhighlight lang=apl inline>∧</source> || [[Lowest Common Multiple]] (LCM)
|-
|-
| || <source lang=apl inline>∨</source> || [[Greatest Common Divisor]] (GCD)
| || <syntaxhighlight lang=apl inline>∨</source> || [[Greatest Common Divisor]] (GCD)
|-
|-
| [[Case fold]] || <source lang=apl inline>⎕C</source> || [[Case map]]
| [[Case fold]] || <syntaxhighlight lang=apl inline>⎕C</source> || [[Case map]]


|-
|-

Navigation menu