]> gitweb.factorcode.org Git - factor.git/blob - doc/handbook/handbook.facts
fe728891d43e43e536e3451691621864d5e9a770
[factor.git] / doc / handbook / handbook.facts
1 USING: alien errors generic hashtables help inference tools
2 io-internals io libc math-internals modules namespaces parser
3 prettyprint queues sequences sequences-internals test words 
4 kernel generic ;
5
6 ARTICLE: "handbook" "Factor documentation"
7 { $subsection "changes" }
8 { $heading "Survival guide" }
9 { $list
10     { "The basic unit of code, corresponding to a \"function\" in other languages, is called a " { $emphasis "word" } " in Factor." }
11     { "Word take inputs from the stack, and leave output values on the stack. This is documented in a " { $emphasis "stack effect declaration" } ", for example " { $snippet "( x y -- z )" } " denotes that a word takes two inputs, with " { $snippet "y" } " at the top of the stack, and returns one output. See " { $link "effect-declaration" } " for details." }
12     { "You can load source files with " { $link run-file } ":"
13     { $code "\"examples/lcd.factor\" run-file" } }
14     { { "You can load " { $snippet "contrib/" } " modules with " { $link require } ":" }
15     { $code "\"contrib/httpd\" require" } }
16     { { $link .s } " prints the contents of the stack." }
17     { { $link . } " prints the object at the top of the stack." }
18 }
19 { $heading "Cookbook" }
20 { $subsection "cookbook-syntax" }
21 { $subsection "cookbook-colon-defs" }
22 { $subsection "cookbook-combinators" }
23 { $subsection "cookbook-variables" }
24 { $subsection "cookbook-vocabs" }
25 { $subsection "cookbook-sources" }
26 { $subsection "cookbook-io" }
27 { $subsection "cookbook-philosophy" }
28 { $heading "Language reference" }
29 { $subsection "conventions" }
30 { $subsection "syntax" }
31 { $subsection "dataflow" }
32 { $subsection "words" }
33 { $subsection "objects" }
34 { $subsection "math" }
35 { $subsection "collections" }
36 { $subsection "streams" }
37 { $subsection "parser" }
38 { $subsection "prettyprint" }
39 { $subsection "alien" }
40 { $heading "Environment reference" }
41 { $subsection "cli" }
42 { $subsection "tools" }
43 { $subsection "help" }
44 { $subsection "inference" }
45 { $subsection "compiler" }
46 { $heading "Graphical user interface" }
47 { $subsection "ui-tools" }
48 { $heading "Index" }
49 { $subsection "article-index" }
50 { $subsection "primitive-index" }
51 { $subsection "error-index" }
52 { $subsection "type-index" }
53 { $subsection "class-index" } ;
54
55 ARTICLE: "article-index" "Article index"
56 { $outliner [ articles get hash-keys ] } ;
57
58 ARTICLE: "primitive-index" "Primitive index"
59 { $outliner [ all-words [ primitive? ] subset ] } ;
60
61 ARTICLE: "error-index" "Error index"
62 { $subsection /0                         }
63 { $subsection alien-callback-error       }
64 { $subsection alien-invoke-error         }
65 { $subsection assert                     }
66 { $subsection bad-escape                 }
67 { $subsection bounds-error               }
68 { $subsection c-stream-error             }
69 { $subsection c-string-error.            }
70 { $subsection callstack-overflow.        }
71 { $subsection check-closed               }
72 { $subsection check-create               }
73 { $subsection check-method               }
74 { $subsection check-ptr                  }
75 { $subsection check-tuple                }
76 { $subsection check-vocab                }
77 { $subsection condition                  }
78 { $subsection datastack-overflow.        }
79 { $subsection datastack-underflow.       }
80 { $subsection empty-queue                }
81 { $subsection expired-error.             }
82 { $subsection ffi-error.                 }
83 { $subsection heap-scan-error.           }
84 { $subsection inference-error            }
85 { $subsection io-error.                  }
86 { $subsection negative-array-size-error. }
87 { $subsection no-article                 }
88 { $subsection no-cond                    }
89 { $subsection no-math-method             }
90 { $subsection no-method                  }
91 { $subsection parse-error                }
92 { $subsection retainstack-overflow.      }
93 { $subsection retainstack-underflow.     }
94 { $subsection signal-error.              }
95 { $subsection slice-error                }
96 { $subsection type-check-error.          }
97 { $subsection undefined-symbol-error.    }
98 { $subsection undefined-word-error.      }
99 { $subsection user-interrupt.            } ;
100
101 ARTICLE: "type-index" "Type index"
102 { $outliner [ builtins get [ ] subset ] } ;
103
104 ARTICLE: "class-index" "Class index"
105 { $outliner [ classes ] } ;