Открыто голосование по содержанию второй (из восьми) бета-редакции алгоритмического языка Scheme R7RS-large (Tangerine Edition), а также сбор предложений по третьей бета-редакции (Orange Edition).
Scheme, также известный под именем Lisp (не путать с Common Lisp) — это современный алгоритмический язык программирования, знаменитый своей ориентацией на функциональную парадигму программирования, однако ей себя не ограничивающий.
Семейство Lisp — второе по длительности применения семейство языков (после Фортрана), основанное Джоном Маккарти в качестве инструмента написания искусственного интеллекта. Одним из активных участников разработки специализированных компьютеров для интерпретации Lisp был Ричард Столлман, впоследствии основатель Фонда Свободного Программного Обеспечения. Как следствие, одним из основных инструментов при разработке на Scheme является Emacs (+Geiser, Scheme-Complete, company-mode). Предполагается, что в какой-то момент Scheme будет внутренним языком Emacs, вместо Emacs Lisp. (Уже сейчас можно посмотреть на EdWin.)
Scheme — это Lisp, ориентированный на лёгкость портирования, функциональный подход и внедрение лучших практик теории языков программирования.
Scheme развивается двумя путями. Индивидуальные расширения формулируются согласно процессу, сходному с RFC, и называются SRFI, (Scheme Request For Implementation). В отведённые сроки выходят объединённые редакции «стандартного отчёта», формулирующие, что из себя представляет scheme «в целом». Последним завершённым изданием является Revised 7 Report on Algorithmic Language Scheme (small language), а последним экспериментальным изданием является R7RS-large Red Edition. Предполагается, что до выхода окончательной редакции R7RS-large выйдет семь или восемь промежуточных редакций, и в данный момент рассматриваются редакция 2 (Tangerine), ставящая своей целью формализовать структуры данных, коллекции и numerics и редакция 3, нацеленная на новые фичи.
Заинтересованным специалистам предлагается изучить дискуссионный материал и проголосовать согласно собственному видению вопроса, представившись перед этим заранее в scheme-reports-wg2@googlegroups.com
Вопросы, по которым предлагается голосование:
- Строковая библиотека
- Ассоциативные массивы
- Регулярные выражения
- Генераторы/Аккумуляторы
- Целочисленные операции
- Битовые операции
- Математические операции с fixpoint
- Математические операции с floating point
- Битовые вектора
- Гомогенные вектора
- Форматирование
- Большие числа
- Дроби
- Точные числа
Вопросы, которые предлагается рассмотреть в третьем издании:
- Случайные числа
- Простые числа
- Целочисленные множества
- Дискрептивная статистика
- Диапазоны
- Битовые вектора
- Байтовые строки
- Перечисления
- Комбинаторика и перестановки
За изображение спасибо Alex Ott.
ilammy
Я немного скептически отношусь к идее сделать из Scheme ещё один Common Lisp, но я рад, что работа над large-языком всё ещё продолжается.
lockywolf Автор
Ну, как бы, всё равно не очень понятно, как жить без большой стандартной библиотеки, чтобы это не тормозило развитие кодовой базы, а тут хотя бы есть разделение на базис и надстройку, и при желании можно "большой язык" игнорировать, большинство компиляторов это позволяют.
Что же до Common Lisp, так ведь стандарт его тоже очень стар, даже старше, кажется, пятой Схемы.