Palavras reservadas são componentes da própria linguagem e não podem ser redefinidas, ou seja, denominar elementos criados pelo programador. Por exemplo, begin, palavra reservada que indica o início de um bloco de código, não pode ser nome rótulos, constantes, tipos ou quaisquer outros identificadores no programa.
O compilador Pascal não faz distinção entre maiúsculas e minúsculas. Assim, tanto identificadores quando palavras reservadas podem ser grafados com variações de maiúsculas e minúsculas sem alteração de significado: begin, BEGIN, Begin ou BeGiN são a mesma coisa.
Conforme o guia de referência da linguagem Free Pascal, versão de dezembro de 2008, as palavras reservadas são divididas em três grupos. O primeiro contém as palavras reservadas para a versão do Turbo Pascal. O segundo compreende as palavras reservadas do Delphi, e o último encerra as do Free Pascal.
Esta diferença existe porque no Turbo Pascal as palavras do Delphi não são reservadas.
A tabela abaixo apresenta uma lista das palavras reservadas reconhecidas pelo compilador Turbo Pascal:
absolute | else | nil | set |
and | end | not | shl |
array | file | object | shr |
asm | for | of | string |
begin | function | on | then |
break | goto | operator | to |
case | if | or | type |
const | implementation | packed | unit |
constructor | in | procedure | until |
continue | inherited | program | uses |
destructor | inline | record | var |
div | interface | reintroduce | while |
do | label | repeat | with |
downto | mod | self | xor |
São palavras reservadas do Delphi:
as | class | except | exports |
finalization | finally | initialization | is |
library | on | out | property |
raise | threadvar | try |
O compilador Free Pascal suporta todas as palavras reservadas descritas acima e mais as seguintes:
dispose | false | true | exit | new |
Atenção: as palavras reservadas variam conforme o compilador utilizado. Portanto, é indispensável consultar o guia de referência para a versão do compilador que tenha em mãos.