on master help sign in
Merge pull request #392 from urbit/link-edits
9516ff9David Kerschner
introduction.udon+2
@@ -40,3 +40,5 @@ If you're a developer looking for Arvo reference documentation, this section is
40
40
41- [The Glossary](/docs/reference/glossary) will help if you're confused by all the new jargon.
41- [The Glossary](/docs/reference/glossary) will help if you're confused by all the new jargon.
42- [The Cheat Sheet](/docs/reference/cheat-sheet) is a compact document for looking up Hoon expressions.
42- [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
13Since there's quite a number of repos, we'll talk about a few of the most
13Since there's quite a number of repos, we'll talk about a few of the most
14important ones here:
14important ones here:
15
15
16−;ul(class "list spaced")
17− ;li
18− ;h1
19− ;a/"https://github.com/urbit/urbit"
16+## [`urbit/urbit`](https://github.com/urbit/urbit)
20− ;code: urbit/urbit
17+
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.
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.
24− ==
19+
25− ;li
26− ;h1
27− ;a/"https://github.com/urbit/arvo"
20+## [`urbit/arvo`](https://github.com/urbit/arvo)
28− ;code: urbit/arvo
21+
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.
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.
32− ==
23+
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.
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.
40− ==
25+
41− ;li
42− ;h1
43− ;a/"https://github.com/urbit/urbit.org"
26+## [`urbit/urbit.org`](https://github.com/urbit/urbit.org)
44− ;code: urbit/urbit.org
27+
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.
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.
48− ==
29+
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.
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.
56− ==
31+
57− ;li
58− ;h1
59− ;a/"https://github.com/urbit/azimuth"
32+## [`urbit.org/azimuth`](https://github.com/urbit/azimuth)
60− ;code: urbit/azimuth
33+
61− ==
62− ==
63− Azimuth is a general-purpose PKI that Urbit uses for network identities.
34+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−==
reference.udon+16−3
@@ -8,11 +8,24 @@
8
8
9Various reference documents are stored here, particularly for Hoon, but also for other parts of the system.
9Various reference documents are stored here, particularly for Hoon, but also for other parts of the system.
10
10
11−## [The Glossary](/docs/reference/glossary)
11+## [The Glossary](glossary)
12
12
13Urbit is known for introducing a great deal of new terminology. The glossary will
13Urbit is known for introducing a great deal of new terminology. The glossary will
14help demystify our jargon.
14help demystify our jargon.
15
15
16−## [The Cheat Sheet](/docs/reference/cheat-sheet)
16+## [The Cheat Sheet](cheat-sheet)
17
17
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 @@
6
6
7# Hoon Expressions
7# Hoon Expressions
8
8
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 @@
1:- :~ navhome/'/docs/'
1:- :~ navhome/'/docs/'
2 navuptwo/'true'
2 navuptwo/'true'
3− sort/'2'
3+ sort/'3'
4 title/'Limbs and Wings'
4 title/'Limbs and Wings'
5 ==
5 ==
6;>
6;>
@@ -11,9 +11,10 @@ One feature Hoon lacks: a context that isn't a first-class value. Hoon has no
11concept of scope, environment, etc. An expression has exactly one data source,
11concept of scope, environment, etc. An expression has exactly one data source,
12the *subject*, a noun like any other.
12the *subject*, a noun like any other.
13
13
14−In Hoon we use 'wings' to extract information from the subject. A wing is a
14+## [Limbs](limb)
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.
18
15
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).