Главное наблюдение заключается в том, что в Схеме не допускаются дополнительные скобки. В (+ 1 2)
оценивается выражение +
, и результат является плюсовой функцией. Эта функция применяется к 1 2, и вы получаете результат 3.
В вашем примере (1)
означает оценку 1, а результат равен 1. Затем примените 1 к никаким аргументам. А поскольку 1 не является функцией, вы получите сообщение об ошибке.
В примере (1 2 3)
ваша система пытается применить 1 к аргументам 2 и 3 и получить сообщение об ошибке.
Вкратце: скобки в арифметике используются для группировки операции - в схеме это означает применение функции.
И наконец: 1 2 3 - это не одно выражение, а три выражения. Последняя из которых оценивается до 3.
Какая схема? Какой стандарт (R5RS, R6RS, R7RS, ...)? Какая реализация и операционная система? –
Ответ на то же самое в RnRS для n = 0 до n = 7. – soegaard