2. Identifiers
Identifiers in Gazprea must start with either an underscore or a letter (upper or lower cased). Subsequent characters can be an underscore, letter (upper or lower case), or number. An identifier may not be any of Gazprea’s keywords. Here are some valid identifiers in Gazprea:
hello
h3ll0
_h3LL0
_Hi
Hi
_3
The following are some examples of invalid identifiers. They begin with a number, contain invalid characters, or are a keyword:
3d
in
a-bad-variable-name
no@twitter
we.don't.like.punctuation
Gazprea imposes no restrictions on the length of identifiers.
3. Namespace
Identifiers are used by variables, functions and procedures.
These share the same namespace in a scope and shadowing is possible between these types.
function x() returns integer; // "x" refers to this function in the global scope
procedure main() {
integer x = 3; // "x" refers to this variable in the scope of main
}
...