Два не одинаковы. Первый - это обычный список. В точечных обозначениях это будет выглядеть так:
(1 . (2 . nil))
Обычный список хранит данные в car
ячейки cons
, а cdr
используется только для хранения указателя на следующую ячейку cons
в списке или Nil для последней ячейки в список.
Ваше определение a
использует только одну ячейку cons
, с 1
в car
и 2
в cdr
.
Если бы вы нарисовали их графически, они бы выглядели так: