Mnemonics: Difference between revisions

Jump to navigation Jump to search
2,304 bytes added ,  21:01, 18 October 2020
no edit summary
No edit summary
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Mnemonics''' can assist with remembering the meaning of APL [[glyph]]s where on they keyboard they are found for [[typing glyphs|typing them]]. Both of these skills are essential for an effective APL programmer. This article currently provides examples such aide-mémoires, but will be completed in due time.
'''Mnemonics''' can assist with remembering the meaning of APL [[glyph]]s where on they keyboard they are found for [[typing glyphs|typing them]]. Both of these skills are essential for an effective APL programmer. This article currently provides examples such aide-mémoires, but will be completed in due time.


[[File:Bristol Type 223 top-view silhouette.png|thumb|right|The [[Grade]] glyphs look like [[wikipedia:supersonic transport|supersonic transport]]s]]
== Pairing glyphs with their meaning ==
== Pairing glyphs with their meaning ==
<source lang=apl inline>⋄</source> (Diamond) separates statements. That is, no functions or operators can break through <source lang=apl inline>⋄</source>, just as diamonds are virtually indestructible.
<source lang=apl inline>⌺</source> looks like a <source lang=apl inline>⋄</source>-shaped [[Stencil]] laid on a piece of paper, <source lang=apl inline>⎕</source>.
<source lang=apl inline>@</source> applies a function or substitutes elements ''[[at]]'' specific locations.
<source lang=apl inline>⌶</source> ([[I-beam]]) calls system services. APL was originally developed at [[IBM]], so system services were also IBM services. <source lang=apl inline>⌶</source> is an [[wikipedia:I-beam|I-beam]] and ''I-beam'' is pronounced almost identically to ''IBM''.
<source lang=apl inline>⍋</source> and <source lang=apl inline>⍒</source> give the indices ([[grade]]s) needed to sort ascending and descending respectively, and look like an ascending and descending supersonic transport, respectively.
<source lang=apl inline>⍋</source> and <source lang=apl inline>⍒</source> give the indices ([[grade]]s) needed to sort ascending and descending respectively, and look like an ascending and descending supersonic transport, respectively.


<source lang=apl inline>⌽</source>, <source lang=apl inline>⊖</source>, and <source lang=apl inline>⍉</source> [[reverse]] or [[transpose]] an array over a given [[axis]]. The <source lang=apl inline>○</source> part of the glyphs symbolise the array, while the line component (<source lang=apl inline>|</source>, <source lang=apl inline>\</source>, or <source lang=apl inline>-</source>) indicates the line across which the reversal/transposal is done.
<source lang=apl inline>⌽</source>, <source lang=apl inline>⊖</source>, and <source lang=apl inline>⍉</source> [[reverse]] or [[transpose]] an array over a given [[axis]]. The <source lang=apl inline>○</source> part of the glyphs symbolise the array, while the line component (<source lang=apl inline>|</source>, <source lang=apl inline>\</source>, or <source lang=apl inline>-</source>) indicates the line across which the reversal/transposal is done.
<source lang=apl inline>⍟</source> looks like the cross-section of a tree log
<source lang=apl inline>⍱</source> and <source lang=apl inline>⍲</source> have the [[Not]] glyph <source lang=apl inline>~</source> on top of or overlaid on the [[Or]] glyph <source lang=apl inline>∨</source> and [[And]] glyph <source lang=apl inline>∧</source>  respectively.


<source lang=apl inline>⌹</source> is [[matrix divide]] with a <source lang=apl inline>⎕</source> symbolising a matrix and an inscribed <source lang=apl inline>÷</source> for "divide".
<source lang=apl inline>⌹</source> is [[matrix divide]] with a <source lang=apl inline>⎕</source> symbolising a matrix and an inscribed <source lang=apl inline>÷</source> for "divide".
<source lang=apl inline>?</source> symbolises the unknown, and thus [[roll]]s dice and [[deal]]s cards randomly.
<source lang=apl inline>⍺</source> and <source lang=apl inline>⍵</source> are the leftmost and rightmost letters of the [[wikipedia:Greek alphabet|Greek alphabet]].
<source lang=apl inline>∊</source> is the Greek letter [[Epsilon]] which corresponds to the letter **E** for [[Enlist]] and [[Element of]].
<source lang=apl inline>⍴</source> is the Greek letter [[Rho]] which corresponds to the letter **R** for [[Reshape]].
<source lang=apl inline>~</source> is [[Not]] when monadic, but its dyadic form, [[Without]] can also be remembered as ''but not''.
<source lang=apl inline>⎕</source> is the prefix for all [[system name]]s, and also also manages input from the console as well as output to the console. For that, it is a stylised console.


<source lang=apl inline>/</source> and <source lang=apl inline>⌿</source> are also called "by" which can be remembered as reduce by.
<source lang=apl inline>/</source> and <source lang=apl inline>⌿</source> are also called "by" which can be remembered as reduce by.
<gallery>
File:Bristol Type 223 top-view silhouette.png|The [[Grade]] glyphs <source lang=apl inline>⍋</source> and <source lang=apl inline>⍒</source> look like [[wikipedia:supersonic transport|supersonic transport]]s.
File:TreeLog.jpg|The [[Log]] glyph <source lang=apl inline>⍟</source> looks like a tree log.
File:Computer console.jpg|The [[Quad]] glyph <source lang=apl inline>⎕</source> looks like a console.
</gallery>


== Pairing glyphs/functionality with their keyboard locations ==
== Pairing glyphs/functionality with their keyboard locations ==

Navigation menu