Concept

Design

  1. Declarative programming with top-level imperative programming supported
  2. No macro avail in the source code. Alternatively, using compiler parameter to pass a macro defination file.
  3. Block requires to bi quoted by { and }

The Language

This section describes the lexis, the syntax, and the semantics of Tapioca Script. In other words, this section describes which tokens are valid, how they can be combined, and what their combinations mean.

Language constructs will be explained using the usual extended BNF notation, in which {a} means 0 or more a's, and [a] means an optional a. Non-terminals are shown like non-terminal, keywords are shown like kword, and other terminal symbols are shown like ‘=’. The complete syntax of Tapioca Script can be found at the end of this manual.

Lexical Conventions

Tapioca Script is a free-form language. It ignores spaces and comments between lexical elements (tokens), except as delimiters between two tokens. In source code, Tapioca Script recognizes as spaces the standard ASCII whitespace characters space, form feed, newline, carriage return, horizontal tab, and vertical tab.

Names (also called identifiers) in Tapioca Script can be any string of Latin letters, Arabic-Indic digits, underscores and non-ASCII UTF-8 charactor, not beginning with a digit and not being a reserved word. Identifiers are used to name variables, table fields, and labels.

The following keywords are reserved and cannot be used as names: