Lisp

Porquê tantos parênteses?


Porquê tantos parênteses?

Originalmente criada por John McCarthy no MIT, a linguagem de programação Lisp surgiu em 1950.

Nos vários anos que se seguiram começaram a aparecer várias versões e dialetos. Em 1980, 30 anos mais tarde, com o objectivo de criar uma linguagem comum e aproveitar a experiência de vários anos de uso dos numerosos dialetos surge o Common Lisp.

Vários destes dialectos de Lisp, incluindo o Common Lisp, são conhecidos por utilizarem um número aberrante de parênteses tornando-se numa piada entre a comunidade. Uma questão levanta-se, porque é que estes estão tão presentes em Lisp?

De forma a emular parte da sintaxe de Fortran, criada por John Backus, McCarthy tentou implementar M-expressions, que seriam uma espécie de açúcar sintático para Lisp. Estas M-expressions utilizam parênteses rectos e seriam traduzidas para S-expressions que utilizam os inúmeros parênteses que Lisp é conhecido por. As S-expressions, conhecidas também por symbolic expressions, são a base de Lisp.

Infelizmente McCarthy e a sua equipa estavam a implementar Lisp no IBM 026 Keypunch que não possuía nenhuma tecla para parênteses rectos, sendo que tiveram de abandonar a ideia.

Desta forma Lisp acabou por utilizar apenas as S-expressions onde os parêntesis desempenham várias funções como representar listas e aplicar funções.