mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-12-20 13:22:07 +03:00
6cbb6b060d
This reverts commit 8e1e40d75b3ab15c194b6bf9570f3edc46e2de58. This reverts commit f073c490f9fd7c5abc033af4857df92229877de7. This reverts commit f187d2d7e01a54823f3e979af9bbd148b398e7e9. This reverts commit bc272862a73cfce1b118586ca39d3a377d841f1b. This reverts commit 30a397513f8890a3406dc7ab91c6e067e3bbfbbb. This reverts commit 4fc6856fb50d88c20a0f533392ca606641c5f38f. Conflicts: urb/urbit.pill urb/zod/base/lib/drum.hoon
1.4 KiB
1.4 KiB
colhep, :-
, %clhp
Cell
:-
, colhep
, [%clhp p=twig q=twig]
is a synthetic rune that
produces the cell [p q]
.
Produces
Twig: [%clhp p=twig q=twig]
Sample
Tall form
:- p
q
Wide form
:-(p q)
Irregular form
[p q]
Examples
~zod/try=> :-(1 2)
[1 2]
~zod/try=> :- 'a'
%b
['a' %b]
This is the most straightforward case of :-
, producing a cell of
static data in either tall or wide form.
/~zod/try=>
:- (add 2 2)
|- (div 4 2)
[4 2]
Most commonly :-
helps to organize code, allowing you to produce a
cell from nested computation.
Some obscure :-
irregular forms.
Moveme: irregular form doc
Infix ^
~zod/main=/app> 1^2^3
[1 2 3]
a^b
is equivalent to :- a b
Infix /
~zod/main=/app> a/1
[%a 1]
~zod/main=/app> a/'twig'
[%a 'twig']
Like ^
, but first item must be a term, and is cubed. Used to construct
paths and fronds.
Prefix `
, postfix ~
~zod/main=/app> ````20
[~ ~ ~ ~ 20]
~zod/main=/app> [42 30]~
[[42 30] ~]
Complimenting each other, these construct pairs with nil in the head and
tail respectively. Multiple postfix ~
do not work for unknown reasons.