Jelly: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
No edit summary
mNo edit summary
Line 20: Line 20:
}}
}}


'''Jelly''' is an APL-like language inspired by [[J]]. It extends J with many built-ins intended to give Jelly an advantage in [[code golf]], e.g. divmod, the hash function, and string compression. Jelly uses different terminology from normal APL usage. [[Train]]s (which work similar to [[K]]'s) are called ''links''. Newlines or statement separators are used to separate links, the last line of the program is called the main link. Built-in functions are called ''atoms', while derived functions are called ''chains''.
'''Jelly''' is an APL-like language inspired by [[J]]. It extends J with many built-ins intended to give Jelly an advantage in [[code golf]], e.g. divmod, the hash function, and string compression. Jelly uses different terminology from normal APL usage. [[Train]]s (which work similar to [[K]]'s) are called ''links''. Newlines or statement separators are used to separate links, the last line of the program is called the main link. Built-in functions are called ''atoms'', while derived functions are called ''chains''.
* Like K, Jelly uses the [[list model]] for its arrays.
* Like K, Jelly uses the [[list model]] for its arrays.
* Like APL, Jelly uses a wide range of Unicode [[glyph]]s. However, Jelly extends the glyph set to 256 characters from the US International keyboard, as well as the addition of 2-character digraphs.
* Like APL, Jelly uses a wide range of Unicode [[glyph]]s. However, Jelly extends the glyph set to 256 characters from the US International keyboard, as well as the addition of 2-character digraphs.

Revision as of 17:21, 28 April 2021


Jelly is an APL-like language inspired by J. It extends J with many built-ins intended to give Jelly an advantage in code golf, e.g. divmod, the hash function, and string compression. Jelly uses different terminology from normal APL usage. Trains (which work similar to K's) are called links. Newlines or statement separators are used to separate links, the last line of the program is called the main link. Built-in functions are called atoms, while derived functions are called chains.

  • Like K, Jelly uses the list model for its arrays.
  • Like APL, Jelly uses a wide range of Unicode glyphs. However, Jelly extends the glyph set to 256 characters from the US International keyboard, as well as the addition of 2-character digraphs.
  • Unlike any other language in the APL family, Jelly atoms have a fixed valence, making Jelly appear more like a stack-based language, and obviating the need for parentheses.

External Links

APL dialects [edit]
Maintained APL+WinAPL2APL64APL\ivApletteAprilCo-dfnsDyalog APLDyalog APL Visiondzaima/APLGNU APLKapNARS2000Pometo
Historical A Programming LanguageA+ (A) ∙ APL#APL2CAPL\360APL/700APL\1130APL\3000APL.68000APL*PLUSAPL.jlAPL.SVAPLXExtended Dyalog APLIverson notationIVSYS/7090NARSngn/aplopenAPLOperators and FunctionsPATRowanSAXSHARP APLRationalized APLVisualAPL (APLNext) ∙ VS APLYork APL
Derivatives AHPLBQNCoSyELIGleeIIvyJJellyK (Goal, Klong, Q) ∙ KamilaLispLang5LilNialRADUiua
Overviews Comparison of APL dialectsTimeline of array languagesTimeline of influential array languagesFamily tree of array languages