2q: Molds and Mold-Builders
$axis
$axisTree address.
A Nock axis inside a $noun. After the leading 1, in binary, a 1 signfies right and 0 left.
Source
+$ axis @Examples
> =axis `axis`7
> axis
7
> `@ub`axis
0b111
> =noun [[4 5] [6 14 15]]
> .*(noun [0 axis])
[14 15]$bean
$beanBoolean.
0, &, or %.y are true, and 1, |, and %.n are false.
Note 1 is false and 0 is true. This is sometimes referred to as "loobean".
Source
+$ bean ?Examples
> *bean
%.y> `bean`&
%.y> `bean`|
%.n$flag
$flagBoolean.
Same as $bean.
Source
+$ flag ?$char
$charCharacter.
A single @t character.
Source
+$ char @tExamples
> *char
''> `char`'a'
'a'$cord
$cordUTF-8 text.
One of Hoon's two string types (the other being $tape). A cord is an $atom of UTF-8 text.
Source
+$ cord @tExamples
> *cord
''> `@ux`'foobar'
0x7261.626f.6f66> `@t`97
'a'> `@`'urbit'
499.984.265.845> `@t`499.984.265.845
'urbit'Discussion
Aura @t designates a Unicode $atom, little-endian: the first character in the text is the least-significant byte.
+trip converts from $cord to $tape, and +crip converts from $tape to $cord.
$byts
$bytsBytes, least-significant first.
An $atom .dat with its byte-length specified in .wid. This is to handle leading zeros that are typically ignored.
Source
+$ byts [wid=@ud dat=@]Examples
> *byts
[wid=0 dat=0]> =a `byts`[4 2]
> a
[wid=4 dat=2]
> `@ux`(rev 3 a)
0x200.0000$date
$dateParsed date.
A boolean designating AD or BC, a year $atom, a month $atom, and a $tarp, which is a day $atom and a time.
Source
+$ date [[a=? y=@ud] m=@ud t=tarp]Examples
> *date
[[a=%.y y=0] m=0 t=[d=0 h=0 m=0 s=0 f=~]]> `date`(yore ~2014.6.6..21.09.15..0a16)
[[a=%.y y=2.014] m=6 t=[d=6 h=21 m=9 s=15 f=~[0xa16]]]> now
~2018.5.25..17.55.15..9ad8Discussion
$knot
$knotURL-safe path element text.
An $atom type that only permits lower-case letters, numbers, and four special characters: hyphen, tilde, underscore and period.
Source
+$ knot @taExamples
> *knot
~.> `@ta`105
~.i$noun
$nounAny $noun.
Source
+$ noun *Examples
> *noun
0> `noun`'foo'
7.303.014> `noun`"foo"
[102 111 111 0]$path
$pathLike a Unix path.
A path is a list of $knot.
Source
+$ path (list knot)Examples
> *path
/> `path`"foo"
/f/o/o> `path`[~.foo ~.bar ~.baz ~]
/foo/bar/baz$stud
$studStandard name.
Source
+$ stud :: standard name
$@ mark=@tas :: auth=urbit
$: auth=@tas :: standards authority
type=path :: standard label
== ::$tang
$tangBottom-first error.
A list of $tanks. It's for printing types and bottom-up printing of stack traces.
Source
+$ tang (list tank)Examples
> *tang
~> %- %- slog
^- tang
:~ 'foo'
leaf+"bar"
[%palm ["|" "(" "!" ")"] leaf+"foo" leaf+"bar" leaf+"baz" ~]
[%rose [" " "[" "]"] leaf+"foo" leaf+"bar" leaf+"baz" ~]
==
foo
bar
(!foo|bar|baz)
[foo bar baz]
~
~$tank
$tankFormatted print tree.
A $tank is one of four cases:
Just a
$cord.%leafis just a$tape.%palmis a list of$tankdelimited by the strings in.p, with back-steps at new lines.%roseis a list of$tankdelimited by the strings in.pwithout back-steps at new lines.
Source
+$ tank
$~ leaf/~
$@ cord
$% [%leaf p=tape]
[%palm p=(qual tape tape tape tape) q=(list tank)]
[%rose p=(trel tape tape tape) q=(list tank)]
==Examples
> *tank
[%leaf p=""]> ~(ram re 'foobar')
"foobar"> ~(ram re leaf+"foo")
"foo"> ~(ram re [%palm ["|" "(" "!" ")"] leaf+"foo" leaf+"bar" leaf+"baz" ~])
"(!foo|bar|baz)"> ~(ram re [%rose [" " "[" "]"] leaf+"foo" leaf+"bar" leaf+"baz" ~])
"[foo bar baz]"$tape
$tapeList of characters.
One of Hoon's two string types, the other being +cord. A tape is a list of @tD.
Source
+$ tape (list @tD)Examples
> *tape
""> `tape`"foobar"
"foobar"> `(list @t)`"foobar"
<|f o o b a r|>> `(list @tD)`"foobar"
"foobar"> `(list @)`"foobar"
~[102 111 111 98 97 114]$tour
$tourUTF-32 clusters.
A $tour is a list of UTF-32 characters.
Source
+$ tour (list @c)Examples
> *tour
~> `tour`(tuba "foobar")
~[~-f ~-o ~-o ~-b ~-a ~-r]$tarp
$tarpParsed time.
The time component of a $date: day, hour, minute, second and a list of @ux for precision.
Source
+$ tarp [d=@ud h=@ud m=@ud s=@ud f=(list @ux)]Examples
> *tarp
[d=0 h=0 m=0 s=0 f=~]> (yell now)
[d=106.751.991.821.625 h=22 m=58 s=10 f=~[0x44ff]]> `tarp`(yell ~2014.6.6..21.09.15..0a16)
[d=106.751.991.820.172 h=21 m=9 s=15 f=~[0xa16]]> (yell ~d20)
[d=20 h=0 m=0 s=0 f=~]$term
$termHoon constant.
A restricted text $atom for Hoon constants. The only characters permitted are lowercase ASCII letters, -, and 0-9, the latter two of which cannot be the first character. The syntax for @tas is the text itself, always preceded by %. The empty @tas has a special syntax, $.
Source
+$ term @tasExamples
> *term
%$> *%term
%term> %dead-fish9
%dead-fish9> -:!>(%dead-fish9)
#t/%dead-fish9> -:!>(`@tas`%dead-fish9)
#t/@tas$wain
$wainList of strings.
A list of $cords. A $wain is used instead of a single $cord with \n.
Source
+$ wain (list cord)Examples
> *wain
<||>> `wain`/som/del/rok
<|som del rok|>$wall
$wallList of list of characters.
A list of $tapes. +wall is used instead of a single $tape with \n.
Source
+$ wall (list tape)Examples
> *wall
<<>>> `wall`(wash [0 20] leaf+<(bex 256)>)
<<"115.792.089.237.316.195.423.570.985.008.687.907.853.269.984.665.640.564.039.457.584.007.913.129.639.936">>Last updated