Песочница

Процедуры списков и составных данных

Списки, пары, векторы и байтовые векторы имеют явные границы правильного списка, индекса, идентичности и изменения.

Проверьте запуском

LISPEX
(list (list-ref (list 10 20 30) 1) (vector-ref #(4 5) 0))

Наблюдаемый результат

OUTPUT
(20 4)

Как рассуждать

  • Доступ и поиск включают семейство c...r, list-ref, list-tail, варианты member/assoc, копирование, добавление, разворот и конструкторы.
  • Для векторов доступны создание, чтение, копирование, отображение и vector-set!; байтовые векторы в этом профиле только для чтения.
  • Неверный домен пары/списка — E310; индекс/диапазон — E311; тип примитива — E312.

Сигнатуры агрегатов

СигнатураРезультат / идентичностьОшибка
(cons a d)новая паранет
(car pair) / (cdr pair)сохранённый компонентE310 не пара
(list-ref proper-list k)элемент kE312 нецелое; E311 диапазон; E310 неправильная цепочка списка
(vector-ref vector k) / (vector-set! vector k value)элемент / ноль значений; идентичность сохраняетсяE312 тип; E311 диапазон
(bytevector-u8-ref bytevector k)точное целое 0..255E312 тип; E311 диапазон

Частая ошибка

Мутаторы пар и байтовых векторов отложены; цитированные составные данные нельзя менять.

Куда дальше

Держите эту страницу рядом при написании кода. За последовательным объяснением вернитесь к карте синтаксиса или соответствующей главе.

Синтаксис одним взглядом · Путь обучения