Niladic function: Difference between revisions

Jump to navigation Jump to search
17 bytes added ,  10:27, 13 March 2020
m
no edit summary
m (Marshall moved page Niladic to Niladic function)
mNo edit summary
Line 1: Line 1:
In [[APL syntax]], a '''niladic function''' is a special type of [[function]] that takes no [[argument]]s and is evaluated immediately when it is encountered in a statement. It cannot be used as an [[operand]] because this evaluation happens before operator binding, or any other evaluation step such as [[stranding]]. For this reason operators are always defined to take non-niladic operands. Niladic is considered one of three possible [[function valence]]s along with [[monadic]] and [[dyadic]].
In [[APL syntax]], a '''niladic function''' is a special type of [[function]] that takes no [[argument]]s and is evaluated immediately when it is encountered in a statement. It cannot be used as an [[operand]] because this evaluation happens before operator binding, or any other evaluation step such as [[stranding]]. For this reason operators are always defined to take non-niladic operands. Niladic is considered one of three possible [[function valence]]s along with [[monadic]] and [[dyadic]].


[[System variable]]s like <source lang=apl inline>⎕TS</source> might be considered instances of niladic functions but are usually not described this way.
[[System variable]]s like <source lang=apl inline>⎕TS</source> ([[time stamp]]) might be considered instances of niladic functions but are usually not described this way.


A niladic function cannot be created as a [[derived function]] or [[dfn]]. However, an APL programmer can define a [[tradfn]] which takes no arguments:
A niladic function cannot be created as a [[derived function]] or [[dfn]]. However, an APL programmer can define a [[tradfn]] which takes no arguments:

Navigation menu