Jump to content

Arc (язык программирования)

Дуга
Парадигмы Мультипарадигма : функциональная , мета , процедурная.
Семья Лисп
Разработано Пол Грэм
Разработчики Пол Грэм, Роберт Моррис,
Арк Сообщество
Впервые появился 29 января 2008 г .; 16 лет назад ( 29.01.2008 )
Стабильная версия
3.2 / 28 октября 2018 г .; 5 лет назад ( 28.10.2018 ) [1]
Дисциплина набора текста Динамический
Язык реализации Ракетка
Платформа ИА-32 , x86-64
ТЫ Линукс
Лицензия Художественная лицензия 2.0
Расширения имен файлов .arc
Веб-сайт дуговой язык .org
Основные реализации
Дуга, Анарки, Аркадия, Радуга
Под влиянием
Лисп , Схема

Arc язык программирования , диалект языка Lisp , разработанный Полом Грэмом и Робертом Моррисом . Это бесплатное программное обеспечение с открытым исходным кодом , выпущенное под лицензией Artistic License 2.0.

История [ править ]

В 2001 году Пол Грэм объявил, что работает над новым диалектом Лиспа под названием Arc . За прошедшие годы он написал несколько эссе, описывающих особенности или цели языка, а некоторые внутренние проекты стартап- бизнес-инкубатора Грэма под названием Y Combinator были написаны на Arc, в первую очередь веб-форум Hacker News и программа-агрегатор новостей. Arc написан на Racket . [2]

Мотивы [ править ]

В эссе « Быть ​​популярным» [3] Грэм описывает несколько своих целей в отношении языка. Хотя многие цели носят очень общий характер («Arc должен быть взломан», «должны быть хорошие библиотеки »), он все же дал некоторые подробности. Например, он считает, что язык должен быть кратким:

Было бы недалеко от истины сказать, что хакер, собирающийся написать программу, решает, какой язык использовать, по крайней мере подсознательно, исходя из общего количества символов, которые ему придется набрать. Если хакеры думают не так, разработчику языка следовало бы действовать так, как будто это так.

Он также заявил, что лучше, чтобы язык реализовывал лишь небольшое количество аксиом , даже если это означает, что язык может не иметь функций, которые нужны крупным организациям, таких как объектно-ориентированность (ОО). Более того, Грэм считает, что объектно-ориентированный подход бесполезен, поскольку его методы и шаблоны представляют собой просто «хороший дизайн», а особенности языка, используемые для реализации объектно-ориентированного подхода, он считает частично ошибочными. [4] [5] При представлении Arc в 2008 году Грэм заявил, что одним из его преимуществ является краткость. [6]

Среди программистов на Лиспе ведутся разногласия по поводу того, следует ли и в какой степени дополнять s-выражения языка другими формами синтаксиса . Грэм считает, что добавленный синтаксис следует использовать в ситуациях, когда чистые s-выражения будут слишком многословными, говоря: «Я не думаю, что мы должны быть религиозно настроены против введения синтаксиса в Лисп». Грэм также считает, что проблемы эффективности следует решать, предоставив программисту хороший профилировщик . [7]

Прием [ править ]

Выпущенный в 2008 году Arc вызвал неоднозначную реакцию: некоторые называли его просто расширением Lisp или Scheme , а не самостоятельным языком программирования. Другие аплодировали Arc за то, что он урезал Lisp до самого необходимого. Вскоре после выпуска Arc был портирован на JavaScript и поддерживался Schemescript , интегрированной средой разработки (IDE), основанной на Eclipse . [8]

Примеры [ править ]

Привет, мир в Арке:

 (prn "Hello, World")

Чтобы проиллюстрировать краткость Арк, Грэм использует краткую программу. Он создает форму с одним полем по URL-адресу «/said». Когда форма отправляется, она ведет на страницу со ссылкой «нажмите здесь», которая затем ведет на страницу со значением исходного поля ввода. [9]

(defop said req
  (aform [onlink "click here" (pr "you said: " (arg _ "foo"))]
    (input "foo") 
    (submit)))

Версии [ править ]

Официальная версия [ править ]

Первая общедоступная версия Arc стала доступна 29 января 2008 года. [10] реализован на Racket (тогда называвшемся PLT-Scheme). Релиз представлен в виде архива .tar Racket , содержащего исходный код для Arc. Учебное пособие [11] и дискуссионный форум [12] также доступны. Форум использует ту же программу, что и Hacker News , и написан на Arc.

Неофициальные версии [ править ]

Из-за отсутствия обновлений в официальной ветке Arc некоторые члены сообщества Arc создали собственные репозитории с неофициальными модификациями, расширениями и библиотеками. Одна из версий, Анарки , [13] разрешено [14] любой, кто может отправлять изменения в проект и имеет вики, управляемую сообществом. [15]

Радуга [16] представляет собой реализацию Arc на Java .

Аркадия [17] является реализацией Arc C. на

Арк++ [18] является реализацией Arc на C++ .

Хронология диалектов LISP

1958 1960 1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015 2020
ЛИСП 1, 1.5, ЛИСП 2 (заброшенный)
 Маклисп
 Интерлисп
 леев
 Лисп-машина Лисп
 Схема Р5РС Р6РС R7RS маленький
 НОЛЬ
 ЗИЛ (язык реализации Zork)
 Франц Лисп
 Общий Лисп стандарт ANSI
 Лисп
 Схема СО
 XLISP
 Т
 На схеме
 Эмакс Лисп
 АвтоЛИСП
 ПикоЛисп
 Гамбит
 EuLisp
 ИСЛИСП
 ОпенЛисп
 Схема PLT  Ракетка
 новыйLISP
 GNU Коварство
 Визуальный ЛИСП
 Кложур
 Дуга
 ЛФЭ
 Он
 Хиалисп

Ссылки [ править ]

  1. ^ «Форум Arc: Расскажите Arc: Arc 3.2» . Arclanguage.org . Проверено 7 ноября 2018 г.
  2. ^ «Дуга Форум: установить» . Arclanguage.org . Проверено 7 ноября 2018 г.
  3. ^ Грэм, Пол (май 2001 г.). «Быть ​​популярным» . ПолГрэм.com . Проверено 5 декабря 2018 г.
  4. ^ Грэм, Пол. «Почему Arc не особенно объектно-ориентирован» . ПолГрэм.com . Проверено 5 декабря 2018 г.
  5. ^ Грэм, Пол. «Часто задаваемые вопросы по дуге» . ПолГрэм.com . Проверено 5 декабря 2018 г.
  6. ^ Хубер, Матиас (8 февраля 2008 г.). «Дуга делает программы короче» . Журнал Линукс . Лоуренс, Канзас: Linux New Media USA . Проверено 25 ноября 2018 г.
  7. ^ Грэм, Пол (май 2001 г.). «Пять вопросов о языковом дизайне» . ПолГрэм.com . Проверено 5 декабря 2018 г.
  8. ^ «Пионер Интернета бьет критиков перчаткой Лиспа» . Регистр . Великобритания . 07.02.2008.
  9. ^ Грэм, Пол (февраль 2008 г.). «Прими вызов дуги» . ПолГрэм.com . Проверено 5 декабря 2018 г.
  10. ^ Грэм, Пол (29 января 2008 г.). «Арка погасла» . ПолГрэм.com . Проверено 5 декабря 2018 г.
  11. ^ «Учебник по дуге» . Пол Грэм . Проверено 5 декабря 2018 г. .
  12. ^ «Арк Форум» . Язык дуги .
  13. ^ Рэпп, Кеннет (kennethrapp) (14 ноября 2018 г.). «Анарки» . Гитхаб . Проверено 5 декабря 2018 г.
  14. ^ Агарам, Картик (akkartik) (27 мая 2013 г.). «Объявление: Анарки больше не являются общепризнанными» . Арк Форум . Язык дуги . Проверено 5 декабря 2018 г.
  15. ^ «Арк Ланг Вики» . Сайты . Проверено 5 декабря 2018 г.
  16. ^ Далтон, Конан (конанит) (12 октября 2010 г.). «Радуга» . Гитхаб . Проверено 5 декабря 2018 г.
  17. ^ Ким, Тэгюн (kimtg) (19 августа 2018 г.). «Аркадия» . Гитхаб . Проверено 5 декабря 2018 г.
  18. ^ Ким, Тэгюн (kimtg) (13 августа 2023 г.). «Аркпп» . Гитхаб . Проверено 13 августа 2023 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: f9d6cd2be1d0fe70049eb32153356b8b__1716129720
URL1:https://arc.ask3.ru/arc/aa/f9/8b/f9d6cd2be1d0fe70049eb32153356b8b.html
Заголовок, (Title) документа по адресу, URL1:
Arc (programming language) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)