4,493
edits
No edit summary |
mNo edit summary |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 16: | Line 16: | ||
| documentation = [https://github.com/DennisMitchell/jellylanguage/wiki Github Wiki] | | documentation = [https://github.com/DennisMitchell/jellylanguage/wiki Github Wiki] | ||
| influenced by = [[Dyalog APL]], [[J]] | | influenced by = [[Dyalog APL]], [[J]] | ||
| influenced = [[Jellyfish]] | |||
| run online = [https://tio.run/#jelly TIO] | | run online = [https://tio.run/#jelly TIO] | ||
}} | }} | ||
'''Jelly''' is | '''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 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. | ||
* | * 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 == | == External Links == | ||
* [https://tio.run/#jelly Try It Online] | * [https://tio.run/#jelly Try It Online] | ||
* [https://github.com/DennisMitchell/jellylanguage/wiki/Tutorial Tutorial] | * [https://github.com/DennisMitchell/jellylanguage/wiki/Tutorial Tutorial] | ||
{{APL dialects}} | {{APL dialects}}[[Category:Programming languages]][[Category:Languages with tacit programming]] |