Table of Contents

Scheme

Реализации:

  • Guile (Проект GNU + встраиваемость в си)
  • MIT Scheme (Стандартная схема)
  • BigLoo (C++ like)
  • Racket (Python like batteries)
  • Chibi Scheme (Встраиваемость в си, маленький размер)

Разница между функциями и макросами:

  • В функции вычисляются все аргументы перед применением
  • В макросе аргументы не вычисляются

Квозиквот (quaziquote):

  • Вычисляет аргументы списка
`(1 2 ,(+ 1 2)) ; => '(1 2 3)

Сплайсинг:

  • Разворачивает список внутрь существующего
`(1 2 ,@(map 1+ '(2 3))) ; => '(1 2 3 4)

Guile Expression Syntax Manual

SRFI (Scheme Request For Implementation):

Структуры данных Scheme

Веб-ресурсы:

Статьи:

Книги:

Научные статьи:

Достоинства:

  • Есть стандарт и он маленький (~40 стр)
  • Есть много реализаций и стандарт просто реализовать

Недостатки:

  • Менее динамичен по сравнению с Common Lisp (geiser < Slime)

Примеры

Книги

Люди

  • Gerald Sussman
  • Guy Steele
  • Friedman

w96k Ⓐ 2019-2022

2022-10-16 Sun 19:30