Humour

From APL Wiki
Jump to navigation Jump to search

Employment of wit and puns has a long history in the APL community. In particular, John Scholes was known for his wit. This article attempts to list and explain specific expressions of APL-themed humour.

Glyph puns

APL's unique glyphs are a constant source of puns and allusions. Most puns rely on the visual shape of the glyphs, or of various common or uncommon names for them.

  • Many APL glyphs have popular humorous names in addition to their official names. This includes splat for the Logarithm symbol (), which is also often called Log (the common mathematical abbreviation for Logarithm) and an allusion to the symbol looking like a stylised tree log.[1]
  • Slash-functions may only be in our trains when accompanied by a calming constant or a responsible operator.[2] This is a double entendre in that it sounds like by-law of a transit company while it actually speaks about forcing function/operator hybrids into acting as functions by either giving them a (constant) array left-argument or letting them be the operand of an operator.
  • APLers often use individual glyphs as smileys, e.g. or or , or create custom emoticons like / ("bye") or ¯\_()_/¯ ("shrug").

Rebuses

  • Give-aways featuring the three glyphs * used to be common at APL conferences because these are the symbols traditionally produced when holding down the APL shifting key and typing APL.

Glyph art

As with ASCII art, APL glyphs are often used to draw pictures.

  • Nativity scene:
        
      ⍒⍒⍒
    
    Legend: Joseph, Mary, Jesus, ⍒⍒⍒ three wise men, donkey, ox, Star of Bethlehem.[6]
APL vs J vs K

Comparison of dialects

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[7] 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) character that do not fit into a normal character 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 high-frequency trading). K users see APL as bloated and old, J as bloated and a joke full of .s and :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

Some features or APL are often ridiculed by APLers. Chiefly among them is the ability too index origin, which leads to off-by-one errors even more often in APL than usually seen in programming.

  • Roger Hui, a strong proponent of fixing index origin ― ⎕IO ― at zero is known for often inserting the phrase ⎕IO delenda est based on Cato's famous Latin oratorical phrase Carthago delenda est.
  • In 2017, as an 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 Array Language Implementation Permission Request addressed to the fictitious Ministry of Vector Processing and contains many in-jokes for APL language developers.[8]

Pop culture

References to Star Wars and Star Trek are common among programmers in general and APLers in particular.

  • ¯1 is a pathway to many abilities some consider to be unnatural.[9] alludes to The dark side of the Force is a pathway to many abilities some consider to be unnatural. uttered by Darth Sidious in Star Wars: Episode III – Revenge of the Sith. The similarity was drawn because the Power operator (), when given a negative number (e.g. ¯1) right operand, indicating the of times to apply a function, works much like a black box. It will at times appear to solve "impossible" problems (by using numerical methods to what appears to be require symbolic manipulation) or give "fantastical" results by succeeding in reversing non-numeric operations. It can also choose any one of multiple correct answers, with no obvious system as to which answer is chosen. The full power of this operator is not documented.
Me at the APL Orchard

Memes

  • 15=∞ for sufficiently small values of ∞[11] or 99≈∞ for sufficiently small values of ∞[12] alludes to the use of e.g. 0 15 or 0 99 in APLs that have a limited maximum rank and do not support infinity as a numeric literal. In particular, Dyalog APL's maximum rank is 15, and so in the very specific context of the right operand of 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 -\.[13]

Apples

Puns built upon how apple (/ah-pell/) and APL (/aye-pea-ell/) sound similar are often used both in visual media and in naming.

  • An apple logo has been used by IBM in advertisements, badges, and stickers given out at APL conferences.
  • APLTree ("apple tree") code library.
  • Py'n'APL ("pineapple") Python-APL bridge (Python is often abbreviated "py-" when used in conjunction with other terms).
  • APLcart as in "upset the applecart" (spoil an established arrangement) as the project was intended to go disrupt the traditional way of documenting APL.
  • APL Seeds ("apple seeds") alluding to the conference aiming at those that are potentially growing into APLers, like apple seeds grow into apples (via apple trees).

References

  1. Eugene McDonnell. Recreational APL: The Story of . APL Quote-Quad, Volume 8, Number 2, 1977-12.
  2. Adám Brudzewsky. Chat message 50586658. APL Orchard. 6 Jun 2019.
  3. Adám Brudzewsky. Chat message 54937708. APL Orchard. 7 December 2020.
  4. Nick Nickolov. Internal email. Dyalog Ltd. 11 Dec 2015.
  5. Aaron Hsu. Above Average shirts. Bonfire web store.
  6. Nick Nickolov. Chat messages 56547006 and 56547161. APL Orchard. 25 Dec 2020.
  7. Nick Nickolov. Chat message 51655962. APL Orchard. 10 Sep 2019.
  8. Nick Nickolov. Chat message 57121910. APL Orchard. 21 Feb 2021.
  9. Adám Brudzewsky. Chat message 56366116. APL Orchard. 7 December 2020.
  10. Raghu Ranganathan. Chat message 55290368.APL Orchard. 19 Aug 2020.
  11. Adám Brudzewsky. Chat message 41106395. APL Orchard. 31 Mar 2020.
  12. Adám Brudzewsky. Chat message 53955678. APL Orchard. 12 Nov 2017.
  13. Nick Nickolov. Chat message 43074306. APL Orchard. 26 Feb 2018.
  14. Adrian Smith. APL385 Font Page.
  15. Dyalog Ltd web site. 50 Years of APL.
APL community [edit]
Activities ConferencesAdvent of CodeAPL CultivationAPL Meetup (Portuguese) ∙ APL Problem Solving CompetitionAPL SeedsBAA sessionsCode golfDyalog user meetingsDyalog webinarsIverson AwardSharing code
User groups APL Borealis (Canada) ∙ APL et J (France) ∙ APL Germany (terminology) ∙ BAA (UK) ∙ FinnAPL (Finland) ∙ JAPLA (Japan) ∙ SAUG (Switzerland) ∙ SIGAPL (USA) ∙ SwedAPL (Sweden)
People Phil AbramsBrian BeckerBob BerneckyLarry BreedCharles BrennerJim BrownAdám BrudzewskyGitte ChristensenPhilip Van CleavePeter DonnellyDan DyerAdin FalkoffGarth FosterAaron HsuRoger HuiKen IversonMorten KrombergMarshall LochbaumEugene McDonnellJohn McPhersonJon McGrewDonald McIntyreRoger MooreAlex MorrowAlan PerlisAl RoseWilliam RutiserJohn ScholesIan SharpLynne ShawBob SmithGeoff StreeterRoy SykesRaymond TisserandArthur WhitneyClark Wiedmann
Other APL OrchardAPL Quote QuadAPL WikiBlogsBooksFamous APL usersForumsHumourJobsPapersSubreddits