Sintaxe dos métodos
Um método é uma sequência de expressões precedida pelo padrão da mensagem que o ativa e, opcionalmente, por uma declaração de variáveis temporárias. Variáveis temporárias são acessíveis apenas para as expressões do método, e desaparecem após o término de sua execução. A declaração das variáveis temporárias consiste em um conjunto de nomes de variáveis delimitado por 2 barras verticais.
Um método é sempre implementado dentro de uma determinada classe e será ativado sempre que alguma instância de sua classe, ou de uma sub-classe desta, receber uma mensagem com o seu padrão de mensagem (desde que não tenha sido redefinido para a sub-classe).
Comentários podem ser incluidos livremente no interior dos métodos, sob a forma de textos delimitados por aspas duplas.
Como exemplo, seja o método abaixo, que poderia ser incluído na classe Number para obter a potência de ordem n (inteiro não negativo) de um número qualquer:
A primeira linha é o padrão da mensagem, onde o seletor é potencia:, com um argumento formal, expoente. A variável temporária result é usada somente para apoiar o algoritmo. A pseudo-variável self refere-se ao objeto receptor da mensagem que é, no caso, o número a ser elevado à potência expoente. A última linha indica que o método retornará o valor final de result.
Após implementado na classe Number, a expressão
5 potência: 2
retornará o valor 25.