Texto fuente
Comentarios y espacios en blanco
//inicia un comentario que llega hasta el final de la línea./* ... */es un comentario de bloque que puede abarcar varias líneas. Los comentarios de bloque no se anidan. Un/*sin cerrar se traga el resto del script, y se produce un error de compilación al final.- Los espacios, las tabulaciones y los saltos de línea separan los tokens y, por lo demás, se ignoran. Una instrucción puede abarcar tantas líneas como quiera.
- Los marcadores de comentario dentro de un literal de cadena son simplemente texto.
Instrucciones y punto y coma
Una asignación o una instrucción de expresión termina con ;. Un bloque { ... }, un if o un
for no necesitan uno después de su llave de cierre. Un ; suelto es una instrucción vacía y es
inofensivo, así que ;; está bien.
Identificadores
Un nombre de variable o de función integrada empieza con una letra o _, seguida de letras, dígitos
o _ (solo ASCII). Los nombres distinguen mayúsculas de minúsculas: count y Count son
variables distintas, y windowmaximize(w) es una función desconocida.
Palabras clave
Hay cinco palabras reservadas: if, else, for, true y false. Ninguna otra es palabra clave.
while, return, break, function, etc., son identificadores normales, así que
while (x) { } se lee como una llamada a una función desconocida llamada while.
Nombres con punto
Namespace.Name sin espacios alrededor del punto hace referencia a una
constante con nombre, como VirtualKey.Enter o FileNotify.LastWrite. No es
un acceso a miembro. No hay objetos, y un punto en cualquier otro lugar es un error.