a +$ can name a compound type like (list @), an alias you cast to.
=> sets the subject to its head, then evaluates its tail against it.
=>([a=1 b=2] b) is 2.
|% makes a core: a battery of named arms, each written ++ name.
reach an arm back out with =< or arm:core.
=< a |% ++ a 5 --
is 5.
^: turns a type into a factory gate that molds any noun to that type.
(^:(@ud) 5) is 5.
list is the type of a null-terminated sequence.
(list @) is a list of atoms; the empty list is ~.
%: calls a gate with several arguments, gathering them into one sample.
%:(add 2 3) is 5.
irregular forms:
(gate a b c) is %:(gate a b c)
lent is how many elements a list has.
(lent `(list @)`~[8 9 10]) is 3.
^- casts a value to a named type: it checks the value fits and relabels it.
^-(@ 42) is 42.
irregular forms:
a leading backtick cast - the type in backticks, then the value - is ^-
:~ makes a null-terminated list.
:~(1 2 3) is ~[1 2 3].
irregular forms:
~[a b c] is :~(a b c)