Tour: Commands

Commands start with a symbol reference, which is a command character followed by a symbol name.

A symbol reference can stand alone, which makes it a value retrieval. This can be the value of a variable, but also a defined type or function.

You can access fields or other nested entities via “::”, followed by an identifier. Besides fields, this also gives you access to functions defined on a type.

Use “:,” if you need to end an identifier but alphanumeric content follows.

This concludes the simple command structures. Next, we will look at command structures that have nested levels.

Details

A command consists of one or more command structures, the first one always being a symbol reference. Each subsequent structure after the first one has the previous structure as subject.

Identifiers consist of alphanumeric characters. The first non-alphanumeric character ends the identifier.

The identifier of a symbol reference resolves in the namespace of the used command character. You can have multiple command characters to avoid name clashes when importing symbols.

The backslash “\” contains all symbols predefined by Nyarna. There is a small subset of symbols defined in every character namespace, which will be discussed later on.