Identifier ist ein String, der zur Laufzeit ausgewertet werden kann. Er steht für ein Wort, dass kein Token ist, wie beispielsweise für einen Variablen-, Funktions- oder Methodennamen. Ein Identifier ist immer konstant und wird zur Compile-Zeit ausgewertet. Identifier können mit Identifiern und Stringkonstanten verbunden werden, es entsteht ein neuer Identifier.
func is identifier : "main"; func is code : print "Hello World\n";
führt dazu, dass die Funktion „main“ deklariert wird.
Ziel der Sache ist, dass Templates auch mit Methoden- und Membervariablennamen bestückt werden können.
optional is template( T is type, id is identifier )
{
valid is attribute;
id is T;
public:
"get"+id is func : return id;
"set"+id is func( to id );
};