Interested Article - Arc (язык программирования)
- 2021-09-20
- 1
Arc — это диалект языка Лисп , который разрабатывают Пол Грэм и Роберт Моррис . В двух словах Arc можно определить как предельно упрощённую версию Лиспа, с мощной поддержкой макросов , позволяющей любые «грязные хаки» в стиле Лиспа.
Предыстория и философия языка
В 2001 году Пол Грэм анонсировал что он работает над новым диалектом Лиспа, который назвал «Arc». За несколько лет, он написал несколько эссе, с описанием функций или целей языка, были написаны на Arc некоторые внутренние проекты компании Y Combinator , в частности веб-форум Hacker News , и программа агрегатор новостей.
В эссе Being Popular Грэм описывает некоторые из его целей своего языка. Заявлены такие цели как «Arc должен поддаваться хакингу » и «в нём должны быть хорошие библиотеки »; Грэм также заявил, что:
Я не уйду далеко от истины, если скажу, что хакер выбирает язык для написания программы, по крайней мере подсознательно, основывается на том, сколько символов ему придётся вводить. Если это и не в точности, то, что думают хакеры, разработчикам языков не мешало бы действовать так, как будто это было бы так.
Оригинальный текст (англ.)It would not be far from the truth to say that a hacker about to write a program decides what language to use, at least subconsciously, based on the total number of characters he'll have to type. If this isn't precisely how hackers think, a language designer would do well to act as if it were.
Пол Грэм указывает, что оригинальный Lisp Джона Маккарти был построен на основе небольшого набора «аксиом», и утверждает, что Arc должна быть построена таким же образом, даже если это означает, что язык не будет иметь возможностей, которые желательны для крупных организаций. В частности, Грэм считает, что объектная ориентация бесполезна, поскольку методы и модели ООП являются просто «хорошим дизайном», и он рассматривает возможности языка используемые для реализации ООП как частично ошибочные .
Среди программистов на Lisp споры вызывает вопрос, нужно ли, и насколько дополнять синтаксис S-выражений другими формами синтаксиса . Грэм считает, что дополнительный синтаксис следует использовать в тех ситуациях, когда чистые S-выражения были бы чересчур многословны, говоря: «Я не думаю, что мы должны фанатично выступать против введения в Lisp синтаксиса». Грэм также считает, что проблемы эффективности должны быть решены путём предоставления программисту хорошего профайлера .
Реализация
Первая публичная версия Arc была представлена 29 января 2008 года . Релиз вышел в форме .TAR архива, содержащего исходный код Arc для mzscheme. Учебник и дискуссионный форум также доступны. Форум является копией форума news.ycombinator.com и тоже написан на Arc. Эта реализация распространяется на условиях (разработанной для языка Perl ).
Первоначальный вариант вызвал некоторые разногласия, в частности из за отсутствия поддержки других наборов символов помимо ASCII , и поставляемой с языком библиотекой веб-разработки , основанной на вёрстке HTML таблицами . Всё это, в сочетании с поднятой вокруг Arc рекламной шумихой и медленным процессом разработки, вызвало немало неблагоприятных комментариев .
Неофициальные версии
В связи с медленным развитием официальной ветви Arc, некоторые участники сообщества Arc открыли неофициальный репозиторий исправлений, расширений и библиотек . Одна из версий, названная Anarki, была начата для продолжения развития, после того как отдельные участники сообщества почувствовали, что централизованное развитие Arc под руководством Пола Грэма впало в застой.
Комментарии
- . Дата обращения: 2 февраля 2010. 26 июня 2013 года.
- . Дата обращения: 2 февраля 2010. 2 мая 2017 года.
- от 29 июня 2013 на Wayback Machine (англ.)
- . Дата обращения: 2 февраля 2010. 26 июня 2013 года.
- . Дата обращения: 2 февраля 2010. 21 марта 2017 года.
- новость на
- . Дата обращения: 2 февраля 2010. Архивировано из 6 февраля 2010 года.
- . Дата обращения: 2 февраля 2010. 25 июля 2011 года.
- . Дата обращения: 28 сентября 2017. 13 февраля 2008 года.
- . Дата обращения: 2 февраля 2010. 6 сентября 2009 года.
Ссылки
- (англ.)
-
(англ.)
- (англ.) Arc форум для пользователей языка Arc.
- (англ.)
- (англ.)
- (англ.) документация/обсуждение arc и anarki
- (англ.) arc wiki
- На русском
- Arc в статьях Пола Грэма
- (англ.) Эссе .
- , — статья в которой Пол Грэм описывает свою жизненную философию и её влияние на Arc
- 2021-09-20
- 1