Em Common Lisp, parâmetros nomeados são chamados de parâmetros de palavra-chave.
Os parâmetros de palavra-chave são designados pela palavra-chave &key em uma lista lambda.
Os parâmetros de palavra-chave não são obrigatórios, podem ter um valor padrão e também podem especificar um "parâmetro supplied-p" que será "verdadeiro" ou "falso" dependendo de um argumento ter sido fornecido para o parâmetro.
(defun keyword-parameter (&key (arg -1) arg)
(keyword-parameter) ; => -1
(keyword-parameter :arg 13) ; => 13
Nos argumentos de uma função, os parâmetros de palavra-chave são especificados pelo seu "nome de palavra-chave" que é, por padrão, uma versão de símbolo de palavra-chave do nome do parâmetro (ou seja, o parâmetro de palavra-chave name tem um nome de palavra-chave :name).
É possível especificar outro nome para o parâmetro de palavra-chave usando uma lista com o nome de palavra-chave e o nome do parâmetro em vez de apenas o nome do parâmetro:
(defun other-keyword-name (&key ((other-name arg))) (list arg))
(other-keyword-name 'other-name 5) ; => (5)
Embora vários tipos de parâmetros possam ser combinados com outros tipos de parâmetros (parâmetros opcionais e de palavra-chave), isso pode ser problemático e deve ser feito com cuidado. Veja a seção "Misturando diferentes tipos de parâmetros" em Practical Common Lisp.