-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Enlist is a concise list/number based recreational programming language designed for golfing, inspired by Jelly. It aspires to outgolf Jelly in certain classes of challenges by using more concise syntax and shorter built-ins for list and number operations.
A function operates on data, taking zero to two arguments and returning a single value. A function taking zero arguments is called a nilad. Examples are the argument getters and all literals. A function taking one argument is called a monad. Monads are post-fix. Examples are array flatten and increment. A function taking two arguments is called a dyad. Dyads are in-fix (or prefix/postfix under different link ordering). Examples are addition and GCD.
An operator operates on data and functions, taking any number of links and replacing it with a function. They can take any number of arguments and are always post-fix. Examples include map, reduce, filter, and compose.
Unlike Jelly, Enlist has arbitrarily nestable link boundaries. This is less golfy than Jelly's link-separators for simple challenges, so link separators still exist. To declare a niladic link, use •...§. Monadic: †...§. Dyadic: ‡...§