Humour: Difference between revisions

Jump to navigation Jump to search
m
→‎Comparison of dialects: Remove "tool of thought" link: unclear what an article should even contain
m (typo of too corrected to to)
m (→‎Comparison of dialects: Remove "tool of thought" link: unclear what an article should even contain)
 
(9 intermediate revisions by 3 users not shown)
Line 21: Line 21:
* ''I was perched ⍤ the tower, giving my un÷d @tention 2 the ⌷ re∪ @ the ⌊ of the ⊂d ○ below me and ↑ing note of ¨ ⍨r's arrival time in my ⍟ ~ ⎕DL'': I was perched [[atop]] the tower, giving my un[[divide]]d [[at]]tention to the [[squad]] re[[union]] [[at]] the [[floor]] of the [[enclose]]d [[circle]] below me and [[take|tak]]ing note of [[each]] [[commute]]r's arrival time in my [[log]] [[without]] [[delay]].<ref>[[Adám Brudzewsky]]. Chat message {{m|54937708}}. [[APL Orchard]]. 7 December 2020.</ref>
* ''I was perched ⍤ the tower, giving my un÷d @tention 2 the ⌷ re∪ @ the ⌊ of the ⊂d ○ below me and ↑ing note of ¨ ⍨r's arrival time in my ⍟ ~ ⎕DL'': I was perched [[atop]] the tower, giving my un[[divide]]d [[at]]tention to the [[squad]] re[[union]] [[at]] the [[floor]] of the [[enclose]]d [[circle]] below me and [[take|tak]]ing note of [[each]] [[commute]]r's arrival time in my [[log]] [[without]] [[delay]].<ref>[[Adám Brudzewsky]]. Chat message {{m|54937708}}. [[APL Orchard]]. 7 December 2020.</ref>


* <syntaxhighlight lang=apl inline>¨∊∪←=⊢2⍝∧?*</syntaxhighlight>: [[Each]] [[member]] of the [[union]] [[gets]] [[equal]] [[right]] to [[comment]] [[and]] [[roll|question]] [[power]].<ref>[[Nick Nickolov]]. Internal email. [[Dyalog Ltd]]. 11 Dec 2015.</ref>
* <syntaxhighlight lang=apl inline>¨∊∪←=⊢2⍝∧?*</syntaxhighlight>: [[Each]] [[member]] of the [[union]] [[gets]] [[equal]] [[right]] to [[comment]] [[and]] [[roll|question]] [[power]].<ref>Nick Nickolov. Internal email. [[Dyalog Ltd]]. 11 Dec 2015.</ref>


* <syntaxhighlight lang=apl inline>⊢>+⌿÷≢</syntaxhighlight>: This [[monadic]] [[train]] indicates [[element]]s that are "[[greater than]] average" or "above [[Simple_examples#Tacit_programming|average]]" and is used as catch phrase by [[Richard Park]] and [[Aaron Hsu]].<ref>[[Aaron Hsu]]. [https://www.bonfire.com/above-average/ Above Average] shirts. Bonfire web store.</ref>
* <syntaxhighlight lang=apl inline>⊢>+⌿÷≢</syntaxhighlight>: This [[monadic]] [[train]] indicates [[element]]s that are "[[greater than]] average" or "above [[Simple_examples#Tacit_programming|average]]" and is used as catch phrase by [[Richard Park]] and [[Aaron Hsu]].<ref>[[Aaron Hsu]]. [https://www.bonfire.com/above-average/ Above Average] shirts. Bonfire web store.</ref>
Line 33: Line 33:
     ⍟
     ⍟
⍒ ⍋⍛ ⍒⍒⍒⍤⍥
⍒ ⍋⍛ ⍒⍒⍒⍤⍥
</syntaxhighlight>Legend: <syntaxhighlight lang=apl inline>⍒</syntaxhighlight> Joseph, <syntaxhighlight lang=apl inline>⍋</syntaxhighlight> Mary, <syntaxhighlight lang=apl inline>⍛</syntaxhighlight> Jesus, <syntaxhighlight lang=apl inline>⍒⍒⍒</syntaxhighlight> three wise men, <syntaxhighlight lang=apl inline>⍤</syntaxhighlight> donkey, <syntaxhighlight lang=apl inline>⍥</syntaxhighlight> ox, <syntaxhighlight lang=apl inline>⍟</syntaxhighlight> Star of Bethlehem.<ref>[[Nick Nickolov]]. Chat messages {{m|56547006}} and {{m|56547161}}. [[APL Orchard]]. 25 Dec 2020.</ref>
</syntaxhighlight>Legend: <syntaxhighlight lang=apl inline>⍒</syntaxhighlight> Joseph, <syntaxhighlight lang=apl inline>⍋</syntaxhighlight> Mary, <syntaxhighlight lang=apl inline>⍛</syntaxhighlight> Jesus, <syntaxhighlight lang=apl inline>⍒⍒⍒</syntaxhighlight> three wise men, <syntaxhighlight lang=apl inline>⍤</syntaxhighlight> donkey, <syntaxhighlight lang=apl inline>⍥</syntaxhighlight> ox, <syntaxhighlight lang=apl inline>⍟</syntaxhighlight> Star of Bethlehem.<ref>Nick Nickolov. Chat messages {{m|56547006}} and {{m|56547161}}. [[APL Orchard]]. 25 Dec 2020.</ref>


* A [[Dyalog duck]]:<syntaxhighlight lang=apl>
* A [[Dyalog duck]]:<syntaxhighlight lang=apl>
Line 48: Line 48:
There is a friendly rivalry between adherents of various APLs and derivatives which can lead to tongue-in-cheek attacks.
There is a friendly rivalry between adherents of various APLs and derivatives which can lead to tongue-in-cheek attacks.


* ''APL vs J vs K''<ref>[[Nick Nickolov]]. Chat message {{m|51655962}}. [[APL Orchard]]. 10 Sep 2019.</ref> is a collage of nine images that purport to illustrate how adherents of APL, [[J]], and [[K]], see the other languages. Going in [[ravel order]], APLers think of APL as the ultimate [[tool of thought]], J as APL's little brother that is too focused on mathematics, and K as being too restricted. J users see APL as the revered sage that has outlived itself using foreign (Chinese) characters that do not fit into a normal rectangle (thus being cut off on the right), J as the perfect all-round tool, and K as running after monetary gain (K being very fast, and often used for [[wikipedia:high-frequency trading|high-frequency trading]]). K users see APL as bloated and old, J as bloated and a joke full of <syntaxhighlight lang=j inline>.</syntaxhighlight>s and <syntaxhighlight lang=j inline>:</syntaxhighlight>s (as these two characters are used as suffixes to expand the number of ASCII symbols), and K as the key to winning the race.
* ''APL vs J vs K''<ref>Nick Nickolov. Chat message {{m|51655962}}. [[APL Orchard]]. 10 Sep 2019.</ref> is a collage of nine images that purport to illustrate how adherents of APL, [[J]], and [[K]], see the other languages. Going in [[ravel order]], APLers think of APL as the ultimate tool of thought, J as APL's little brother that is too focused on mathematics, and K as being too restricted. J users see APL as the revered sage that has outlived itself using foreign (Chinese) characters that do not fit into a normal rectangle (thus being cut off on the right), J as the perfect all-round tool, and K as running after monetary gain (K being very fast, and often used for [[wikipedia:high-frequency trading|high-frequency trading]]). K users see APL as bloated and old, J as bloated and a joke full of <syntaxhighlight lang=j inline>.</syntaxhighlight>s and <syntaxhighlight lang=j inline>:</syntaxhighlight>s (as these two characters are used as suffixes to expand the number of ASCII symbols), and K as the key to winning the race.


== Criticism of APL ==
== Criticism of APL ==


Some features of APL are often ridiculed by APLers. Chiefly among them is the ability to [[index origin]], which leads to [[wikipedia:off-by-one error|off-by-one error]]s even more often in APL than usually seen in programming.
Some features of APL are often ridiculed by APLers. Chief among them is the ability to set [[index origin]], which leads to [[wikipedia:off-by-one error|off-by-one error]]s even more often in APL than usually seen in programming.
 
[[File:Aplbingo.png|right|thumb|Some APLers may enjoy playing a game of "complaint bingo" when conversing with the unreceptive.]]


* [[Roger Hui]], a strong proponent of fixing index origin ― <syntaxhighlight lang=apl inline>⎕IO</syntaxhighlight> ― at zero is known for often inserting the phrase ''<syntaxhighlight lang=apl inline>⎕IO</syntaxhighlight> delenda est'' based on Cato's famous Latin oratorical phrase  ''[[wikipedia:Carthago delenda est|Carthago delenda est]]''.
* [[Roger Hui]], a strong proponent of fixing index origin ― <syntaxhighlight lang=apl inline>⎕IO</syntaxhighlight> ― at zero is known for often inserting the phrase ''<syntaxhighlight lang=apl inline>⎕IO</syntaxhighlight> delenda est'' based on Cato's famous Latin oratorical phrase  ''[[wikipedia:Carthago delenda est|Carthago delenda est]]''.
Line 58: Line 60:
* In 2017, as an [[wikipedia:April Fools' Day|April Fools' Day]] joke, [[Dyalog Ltd.]] announced "a final improvement" to the "otherwise deprecated language feature", [[Branch]], which would make it sensitive to the selected index origin. Such a change would cause a great many existing programs to break.
* In 2017, as an [[wikipedia:April Fools' Day|April Fools' Day]] joke, [[Dyalog Ltd.]] announced "a final improvement" to the "otherwise deprecated language feature", [[Branch]], which would make it sensitive to the selected index origin. Such a change would cause a great many existing programs to break.


* [[Nick Nickolov]] has created an interactive form that claims to be an [https://ngn.codeberg.page/funny/reg.html Array Language Implementation Permission Request] addressed to the fictitious ''Ministry of Vector Processing'' and contains many in-jokes for APL [[language developers]].<ref>[[Nick Nickolov]]. Chat message {{m|57121910}}. [[APL Orchard]]. 21 Feb 2021.</ref>
* Nick Nickolov has created an interactive form that claims to be an [https://ngn.codeberg.page/funny/reg.html Array Language Implementation Permission Request] addressed to the fictitious ''Ministry of Vector Processing'' and contains many in-jokes for APL [[language developers]].<ref>Nick Nickolov. Chat message {{m|57121910}}. [[APL Orchard]]. 21 Feb 2021.</ref>


* This poem of unknown origin has been circulating the internet:<ref>Dyalog Blog. [https://www.dyalog.com/blog/poetry/ Poetry]. Undated. Retrieved 29 Oct 2021.</ref><blockquote>'Tis the dream of each programmer,<br>Before his life is done,<br>To write three lines of APL,<br>And make the damn things run.</blockquote>
* This poem of unknown origin has been circulating the internet:<ref>Dyalog Blog. [https://www.dyalog.com/blog/poetry/ Poetry]. Undated. Retrieved 29 Oct 2021.</ref><blockquote>'Tis the dream of each programmer,<br>Before his life is done,<br>To write three lines of APL,<br>And make the damn things run.</blockquote>
Line 71: Line 73:
== Memes ==
== Memes ==


* The [[APL Orchard]] chat room is frequented by expert and neophyte APLers alike. A recurring theme is that newcomers feel inferior in the presence of the those with more experience. In the [[wikipedia:anime|anime]] illustration, the people listed are, from left to right, [[Nick Nickolov]] (creator of [[ngn/apl]] and former employee at [[Dyalog Ltd.]]), [[dzaima]] (creator of [[dzaima/APL]] and 2020 2nd Place winner of the 2020 [[APL Problem Solving Competition]]), [[Adám Brudzewsky]] (lifelong APL programmer, founder of the APL Orchard, creator of [[Extended Dyalog APL]], and employee at [[Dyalog Ltd.]]), and Woosuk Kwak (2020 Professional Prize winner in the APL Problem Solving Competition). <ref>Raghu Ranganathan. Chat message {{m|55290368}}.[[APL Orchard]]. 19 Aug 2020.</ref>
* The [[APL Orchard]] chat room is frequented by expert and neophyte APLers alike. A recurring theme is that newcomers feel inferior in the presence of those with more experience. In the [[wikipedia:anime|anime]] illustration, the people listed are, from left to right, (Nick Nickolov (creator of [[ngn/apl]] and former employee at [[Dyalog Ltd.]]), [[dzaima]] (creator of [[dzaima/APL]] and 2020 2nd Place winner of the 2020 [[APL Problem Solving Competition]]), [[Adám Brudzewsky]] (lifelong APL programmer, founder of the APL Orchard, creator of [[Extended Dyalog APL]], and employee at [[Dyalog Ltd.]]), and Woosuk Kwak (2020 Professional Prize winner in the APL Problem Solving Competition). <ref>Raghu Ranganathan. Chat message {{m|55290368}}.[[APL Orchard]]. 19 Aug 2020.</ref>
[[File:Before and after.jpg|thumb|right|"Before and After" meme.]]
[[File:Before and after.jpg|thumb|right|"Before and After" meme.]]
* Using APL can "spoil" a programmer, in the sense that they get frustrated by the lack expressiveness in other programming languages. This is expressed by an instance of the "Before and After" meme.<ref>Raghu Ranganathan. Chat message {{m|58877609}}.[[APL Orchard]]. 13 Aug 2021.</ref>
* Using APL can "spoil" a programmer, in the sense that they get frustrated by the lack of expressiveness in other programming languages. This is expressed by an instance of the "Before and After" meme.<ref>Raghu Ranganathan. Chat message {{m|58877609}}.[[APL Orchard]]. 13 Aug 2021.</ref>


* ''15=∞ for sufficiently small values of ∞''<ref>[[Adám Brudzewsky]]. Chat message {{m|41106395}}. [[APL Orchard]]. 31 Mar 2020.</ref> or ''99≈∞ for sufficiently small values of ∞''<ref>Adám Brudzewsky. Chat message {{m|53955678}}. [[APL Orchard]]. 12 Nov 2017.</ref> alludes to the use of e.g. <syntaxhighlight lang=apl inline>⍤0 15</syntaxhighlight> or <syntaxhighlight lang=apl inline>⍤0 99</syntaxhighlight> in APLs that have a limited maximum [[rank]] and do not support infinity as a [[number|numeric literal]]. In particular, [[Dyalog APL]]'s maximum rank is 15, and so in the very specific context of the right operand of [[Rank (operator)|Rank]], 15=∞.
* ''15=∞ for sufficiently small values of ∞''<ref>[[Adám Brudzewsky]]. Chat message {{m|41106395}}. [[APL Orchard]]. 31 Mar 2020.</ref> or ''99≈∞ for sufficiently small values of ∞''<ref>Adám Brudzewsky. Chat message {{m|53955678}}. [[APL Orchard]]. 12 Nov 2017.</ref> alludes to the use of e.g. <syntaxhighlight lang=apl inline>⍤0 15</syntaxhighlight> or <syntaxhighlight lang=apl inline>⍤0 99</syntaxhighlight> in APLs that have a limited maximum [[rank]] and do not support infinity as a [[number|numeric literal]]. In particular, [[Dyalog APL]]'s maximum rank is 15, and so in the very specific context of the right operand of [[Rank (operator)|Rank]], 15=∞.


* ''[[ngn]]'s scans'' or ''[[ngn]]'s cumulative reduces'' refers to [[Nick Nickolov]]'s uncanny ability to come up with unusual uses of [[Scan]] for solving various problems, e.g. negating every other number with <syntaxhighlight lang=apl inline>⊢∘-\</syntaxhighlight>.<ref>[[Nick Nickolov]]. Chat message {{m|43074306}}. [[APL Orchard]]. 26 Feb 2018.</ref>
* ''ngn's scans'' or ''ngn's cumulative reduces'' refers to Nick Nickolov's uncanny ability to come up with unusual uses of [[Scan]] for solving various problems, e.g. negating every other number with <syntaxhighlight lang=apl inline>⊢∘-\</syntaxhighlight>.<ref>Nick Nickolov. Chat message {{m|43074306}}. [[APL Orchard]]. 26 Feb 2018.</ref>
[[File:Airplane meme.jpg|thumb|right|"Enjoying the flight" meme.]]
[[File:Airplane meme.jpg|thumb|right|"Enjoying the flight" meme.]]


Line 83: Line 85:


[[File:APL Keyboard.jpg|thumb|Peak Engineering happened in the 1970s]]
[[File:APL Keyboard.jpg|thumb|Peak Engineering happened in the 1970s]]
* APL is a bit infamous in its character set of unusual [[glyph]]s, so Ace decided to make a "Peak Engineering" meme that turns that idea on it's head.
* APL is a bit infamous in its character set of unusual [[glyph]]s, so Ace decided to make a "Peak Engineering" meme that turns that idea on its head.


[[File:KamilaLispVSBqn.png|thumb|BQN vs KamilaLisp]]
[[File:KamilaLispVSBqn.png|thumb|BQN vs KamilaLisp]]
* Array programmers often disagree on the optimal set of primitives. While traditional array languages such as [[APL]] and [[BQN]] strive on completeness and minimalism, [[KamilaLisp]] implements every convenient functionality as a primitive.  
* Array programmers often disagree on the optimal set of primitives. While traditional array languages such as [[APL]] and [[BQN]] strive for completeness and minimalism, [[KamilaLisp]] implements every convenient functionality as a primitive.


== Apples ==
== Apples ==

Navigation menu