Raze: Difference between revisions

Jump to navigation Jump to search
no edit summary
(History in SHARP, J, and A+)
No edit summary
Line 1: Line 1:
:''The [[Right Shoe]] symbol <syntaxhighlight lang=apl inline>⊃</syntaxhighlight> is more commonly used for [[First]] or [[Mix]].''
:''The Down Arrow <syntaxhighlight lang=apl inline>↓</syntaxhighlight> is more often used for [[Split]], and the [[Right Shoe]] symbol <syntaxhighlight lang=apl inline>⊃</syntaxhighlight> for [[First]] or [[Mix]].''


{{Built-in|Raze|}}, <syntaxhighlight lang=j inline>;</syntaxhighlight> in [[J]], or '''Join''' (<code>∾</code>) in [[BQN]], is a [[monadic function]] which combines [[element]] arrays of a [[nested]] [[vector]] along the first [[axis]] (in accordance with [[leading axis theory]]). Thus, the [[major cell]]s of the Raze of an array are the major cells of its element arrays: unlike [[Mix]], which removes a level of [[depth]] while keeping outer and inner axes separate, Raze merges the outer vector's axis with the first axis of each element. Raze is present in [[A+]], [[J]], and [[BQN]].
{{Built-in|Raze|}}, <syntaxhighlight lang=apl inline>⊃</syntaxhighlight> in [[A+]], <syntaxhighlight lang=j inline>;</syntaxhighlight> in [[J]], or '''Join''' (<code>∾</code>) in [[BQN]], is a [[monadic function]] which combines [[element]] arrays of a [[nested]] [[vector]] along the first [[axis]] (in accordance with [[leading axis theory]]). Thus, the [[major cell]]s of the Raze of an array are the major cells of its element arrays: unlike [[Mix]], which removes a level of [[depth]] while keeping outer and inner axes separate, Raze merges the outer vector's axis with the first axis of each element. Raze is present in [[SHARP APL]], [[A+]], [[J]], and [[BQN]].


== Examples ==
== Examples ==
Line 39: Line 39:
== History ==
== History ==


Raze was defined as monadic <syntaxhighlight lang=apl inline>↓</syntaxhighlight> in [[A Dictionary of APL]] in 1987, and added to [[SHARP APL]] in version 20, released in 1989.<ref>[[IPSA]]. [https://archive.org/details/sharp-apl-release-20.0-guide-for-apl-programmers "SHARP APL Release 20.0: Guide for APL Programmers"].</ref> It appears in [[J]]'s initial 1990 release as <syntaxhighlight lang=j inline>{.</syntaxhighlight> (that is, also paired with [[Take]]) but was moved to <syntaxhighlight lang=j inline>;</syntaxhighlight> in 1991.<ref>[[Jsoftware]]. [https://code.jsoftware.com/wiki/Help/Release/J_4.05/Implementation_Status J 4.05 Implementation Status]. Version 3.2.</ref> The glyph <syntaxhighlight lang=apl inline>⊃</syntaxhighlight> is used instead in [[A+]].
Raze was defined as monadic <syntaxhighlight lang=apl inline>↓</syntaxhighlight> in [[A Dictionary of APL]] in 1987, and added to [[SHARP APL]] in version 20, released in 1989.<ref>[[IPSA]]. [https://archive.org/details/sharp-apl-release-20.0-guide-for-apl-programmers "SHARP APL Release 20.0: Guide for APL Programmers"].</ref> It appears in [[J]]'s initial 1990 release as <syntaxhighlight lang=j inline>}.</syntaxhighlight> (that is, also paired with [[Drop]]) but was moved to <syntaxhighlight lang=j inline>;</syntaxhighlight> in 1991.<ref>[[Jsoftware]]. [https://code.jsoftware.com/wiki/Help/Release/J_4.05/Implementation_Status J 4.05 Implementation Status]. Version 3.2.</ref> The glyph <syntaxhighlight lang=apl inline>⊃</syntaxhighlight> is used instead in [[A+]].


== External links ==
== External links ==

Navigation menu