Pergunta
A seguir é um exercício de SICP. Eu não poderia descobrir isso por conta própria. Pode algum por me ajudar a entender?
Digite o seguinte código em interpreator:
(car ''abracadabra)
E imprimir 'citação'. Por quê?
Solução
Como gimpf disse, 'abracadabra = (citação abracadabra). Você pode verificar isso digitando '' abracadabra ao REPL, que será impresso (citação abracadabra).
Outras dicas
Porque '' abracadabra é realmente (citação (aspas abracadabra)). No esquema, a regra é: avaliar todas as partes do s-expressão, e aplicar a primeira parte para o resto das partes
."carro" e "quote" são símbolos do abaixo. #car e #quote são as funções a que se referem.
Se você tomar
(car (quote (quote abracadabra)))
e avaliar as peças, você começa
(#car (quote abracadabra))
Em seguida, aplique a primeira parte (a função de carro) para a segunda parte (uma lista de dois símbolos).
quote
E você obter apenas o "quote" símbolo.
Basta lembrar, para descobrir o que acontece no Esquema, avaliar as peças e aplicar o primeiro para o resto. Se você avaliar cotação, você obter o interior coisas. A única parte confusa é que alguns primitivos (número e cordas) avaliar a si mesmos.