on master help sign in
adds child-links to various pages, fixes formatting
commit1a36e25b63ac65ec3137af9216eadb4066bf851a authorRobert <robert@tlon.io> dateTue 12 Feb 2019, 12:46 (8 years ago) parent6f1e3a4
5 files changed+65−68
introduction.udon+2 introduction/source-code-overview.udon+19−58 reference.udon+16−3 reference/hoon-expressions.udon+21−1 reference/hoon-expressions/limb.udon+7−6
introduction.udon+2
@@ -40,3 +40,5 @@ If you're a developer looking for Arvo reference documentation, this section is
4040
4141- [The Glossary](/docs/reference/glossary) will help if you're confused by all the new jargon.
4242- [The Cheat Sheet](/docs/reference/cheat-sheet) is a compact document for looking up Hoon expressions.
43+- [The Hoon Expressions](/docs/reference/hoon-expressions) section contains more comprehensive reference material for Hoon expressions.
44+- [The Standard Library](/docs/reference/library) section documents the Hoon standard library.
introduction/source-code-overview.udon+19−58
@@ -13,61 +13,22 @@ We host all our source code on GitHub at [github.com/urbit](https://github.com/u
1313Since there's quite a number of repos, we'll talk about a few of the most
1414important ones here:
1515
16−;ul(class "list spaced")
17− ;li
18− ;h1
19− ;a/"https://github.com/urbit/urbit"
20− ;code: urbit/urbit
21− ==
22− ==
23− This is the main Urbit repo. It contains the Urbit interpreter (all of the C code) and is the main entry point if you're going to build from source.
24− ==
25− ;li
26− ;h1
27− ;a/"https://github.com/urbit/arvo"
28− ;code: urbit/arvo
29− ==
30− ==
31− Arvo is the Urbit operating system (written in Hoon). When you boot your Urbit, you get this over the air. The source code is kept here, and you'll need it if you want to do any heavy development work.
32− ==
33− ;li
34− ;h1
35− ;a/"https://github.com/urbit/docs"
36− ;code: urbit/docs
37− ==
38− ==
39− Interesting in working on Urbit documentation? This repository is where all the collaboration happens. The docs themselves are just markdown files hosted on a live ship.
40− ==
41− ;li
42− ;h1
43− ;a/"https://github.com/urbit/urbit.org"
44− ;code: urbit/urbit.org
45− ==
46− ==
47− This is where the source code for urbit.org lives. Like the docs, the urbit.org website is just a collection of a few markdown files rendered by Tree, the Urbit web publishing system.
48− ==
49− ;li
50− ;h1
51− ;a/"https://github.com/urbit/base-css"
52− ;code: urbit/base-css
53− ==
54− ==
55− We're working on a new Urbit style guide for urbit.org, the docs and Urbit web apps. If you're into visual design or are a CSS fanatic, jump in here.
56− ==
57− ;li
58− ;h1
59− ;a/"https://github.com/urbit/azimuth"
60− ;code: urbit/azimuth
61− ==
62− ==
63− Azimuth is a general-purpose PKI that Urbit uses for network identities.
64− ==
65− ;li
66− ;h1
67− ;a/"https://github.com/urbit/bridge"
68− ;code: urbit/bridge
69− ==
70− ==
71− Bridge is an offline web application for interacting with Ecliptic, the interface to Azimuth.
72− ==
73−==
16+## [`urbit/urbit`](https://github.com/urbit/urbit)
17+
18+This is the main Urbit repo. It contains the Urbit interpreter (all of the C code) and is the main entry point if you're going to build from source.
19+
20+## [`urbit/arvo`](https://github.com/urbit/arvo)
21+
22+Arvo is the Urbit operating system (written in Hoon). When you boot your Urbit, you get this over the air. The source code is kept here, and you'll need it if you want to do any heavy development work.
23+
24+Interesting in working on Urbit documentation? This repository is where all the collaboration happens. The docs themselves are just markdown files hosted on a live ship.
25+
26+## [`urbit/urbit.org`](https://github.com/urbit/urbit.org)
27+
28+This is where the source code for urbit.org lives. Like the docs, the urbit.org website is just a collection of a few markdown files rendered by Tree, the Urbit web publishing system.
29+
30+We're working on a new Urbit style guide for urbit.org, the docs and Urbit web apps. If you're into visual design or are a CSS fanatic, jump in here.
31+
32+## [`urbit.org/azimuth`](https://github.com/urbit/azimuth)
33+
34+Azimuth is a general-purpose PKI that Urbit uses for network identities.
reference.udon+16−3
@@ -8,11 +8,24 @@
88
99Various reference documents are stored here, particularly for Hoon, but also for other parts of the system.
1010
11−## [The Glossary](/docs/reference/glossary)
11+## [The Glossary](glossary)
1212
1313Urbit is known for introducing a great deal of new terminology. The glossary will
1414help demystify our jargon.
1515
16−## [The Cheat Sheet](/docs/reference/cheat-sheet)
16+## [The Cheat Sheet](cheat-sheet)
1717
18−The cheat sheet compact document for looking up Hoon expressions.
18+The cheat sheet is a compact document for looking up Hoon runes.
19+
20+## [Hoon Expressions](hoon-expressions)
21+
22+This section contains more comprehensive reference materials for Hoon runes and other expressions, describing their exact
23+semantics and syntax.
24+
25+## [Standard Library](library)
26+
27+This section documents the gates and mold-builders of the Hoon standard library.
28+
29+## [Troubleshooting](troubleshooting)
30+
31+When your Hoon produces an error, check what it means here.
reference/hoon-expressions.udon+21−1
@@ -6,4 +6,24 @@
66
77# Hoon Expressions
88
9−Documentation for hoon expressions.
9+Documentation for Hoon expressions.
10+
11+## [Runes](runes)
12+
13+Runes are a way to form expressions in Hoon. Their exact semantics and
14+
15+## [Limbs and Wings](limbs)
16+
17+Limbs and wings are ways to extract data from the subject.
18+
19+## [Basic Types](basic)
20+
21+A simplified explanation of of the Hoon type system.
22+
23+## [Advanced Types](advanced)
24+
25+A more comprehensive explanation of the Hoon type system, covering aliasing and polymorphism.
26+
27+## [Irregular Forms](irregular)
28+
29+Alternative syntaxes for Hoon runes.
reference/hoon-expressions/limb.udon+7−6
@@ -1,6 +1,6 @@
11:- :~ navhome/'/docs/'
22 navuptwo/'true'
3− sort/'2'
3+ sort/'3'
44 title/'Limbs and Wings'
55 ==
66;>
@@ -11,9 +11,10 @@ One feature Hoon lacks: a context that isn't a first-class value. Hoon has no
1111concept of scope, environment, etc. An expression has exactly one data source,
1212the *subject*, a noun like any other.
1313
14−In Hoon we use 'wings' to extract information from the subject. A wing is a
15−list of limbs (including a trivial list of one limb). A limb is used to resolve
16−to a piece of data in the subject. A wing is thus a resolution path into the
17−subject.
14+## [Limbs](limb)
1815
19−;list(datapreview "true", classname "runes");
16+A limb is used to resolve to a piece of data in the subject. A wing is thus a resolution path into the subject.
17+
18+## [Wings](wing)
19+
20+In Hoon we use 'wings' to extract information from the subject. A wing is a list of limbs (including a trivial list of one limb).