on master help sign in
what are auras
commit8b34d791bc2a28b3900466206e2f740ebc92a8fb authordrbeefsupreme <drbeefsupreme@discordja.net> dateTue 16 Mar 2021, 13:05 (6 years ago) parentb864705
1 file changed+14
hoon/reference/auras.md+14
hoon/reference/auras.md+14
@@ -4,6 +4,17 @@ weight = 70
44template = "doc.html"
55+++
66
7+Auras are system of nested "soft types" on [atoms](@/docs/glossary/atom.md) that
8+are used to track metadata about how a particular atom is to be interpreted.
9+This is used for type checking as well as pretty printing.
10+
11+A given aura nests under any aura whose name is a substring of the given aura,
12+i.e. `@ux` nests under `@u`, and all auras nest under the empty aura `@`. We
13+call auras "soft types" since this nesting behavior can be ignored - see
14+[below](#non-coercive).
15+
16+You can learn more about auras in [Hoon school](@/docs/hoon/hoon-school/atoms-auras-and-simple-types.md).
17+
718```
819Aura Meaning Example Literal Syntax
920-------------------------------------------------------------------------
@@ -51,6 +62,9 @@ two, starting from A.
5162 @uxG unsigned 64-bit hexadecimal
5263 @uvJ unsigned, 512-bit integer (frequently used for entropy)
5364```
65+
66+### Non-coercive
67+
5468Auras are non-coercive, but conversions may have to go via the empty aura, e.g.
5569```
5670> ^-(@ud ^-(@ 'foo'))