You can choose any name, as long as it does not already have a meaning. For instance you cannot name a function forward, since that name is already used for an internal command. # here forward is used as a new command, # but it already has a meaning so # this will produce an error: learn forward {print "this is invalid"} # this works: learn myforward {print "this is ok"} Names can contain only letters, numbers and underscores (_). Yet they have to start with a letter. Container names have to start with the container prefix ($).
Pode escoller calquera nome mentres non teña xa asinado un significado. Por exemplo non pode crear unha función chamada avanza, porque este nome xa é empregado por un comando interno. # aquí emprégase avanza como un comando novo, # pero xa ten un significado, polo que # dará un erro: define avanza {escrebe "isto non é válido"} # isto funciona: define adianta {escrebe "isto serve"} Os nomes só poden conter letras, número e trazos baixos (_), e teñen que comezar por unha letra. Os nomes de contedor teñen que comezar co prefixo de contedor ($).