DOC: Fill out the reference overview more.

This commit is contained in:
Jeremy Wall 2019-03-29 12:57:26 -04:00
parent d3f7e49790
commit d31d5ed454

View File

@ -8,14 +8,19 @@ in_search_index = true
An Overview
-----------
UCG is a language specialized for generating configurations. It does not have classes,
inheritance, or a full type system. All values are immutable once bound to
a name. A valid UCG file is composed of a series of statements. Statements can be
an expression, introduce named bindings, or create different outputs. All statements
must be terminiated by a semicolon.
UCG is an immutable, expression oriented, functional programming language
specialized for generating configurations. It has limited IO and a form of
forward type inference.
A valid UCG file is composed of a series of statements. Statements can be an
expression, introduce named bindings, or create different outputs. All
statements must be terminiated by a semicolon. Statements are executed in order.
All expressions in ucg return a value. Expressions can see anything declared in
their enclosing scope up to the point of their execution.
Scopes in UCG are defined by the ucg file, a function, or a module body.
Some words are reserved in UCG and can not be used as a named binding.
* self
* assert