Next: , Previous: , Up: Стиль кодирования   [Contents][Index]


22.5.3 Типы данных и поиск образцов

Правило классического Lisp - использование списков для представления всего и просмотр списков "вручную", используя car, cdr, cadr и тому подобное. Возникают некоторые проблемы этого стиля, например, это тяжело читается, провоцирует ошибки, и создаёт отчёты об ошибках без должной детализации.

Guix code should define appropriate data types (for instance, using define-record-type*) rather than abuse lists. In addition, it should use pattern matching, via Guile’s (ice-9 match) module, especially when matching lists (see Pattern Matching in GNU Guile Reference Manual); pattern matching for records is better done using match-record from (guix records), which, unlike match, verifies field names at macro-expansion time.