Что отличает (открывает) Дилана от других языков программирования?
В настоящее время существует очень много языков программирования: функциональных, объектно-ориентированных, динамически или статически типизированных или сочетаний этих характеристик.
Недавно я заметил этот выпуск: http://opendylan.org/news/2011/12/10/new_release.html
Открой Дилана.
Почему людям было бы интересно изучать этот язык программирования, если уже есть Clojure, Python, Java, Scala, C#, Common Lisp, Scheme с возможно большими, более важными сообществами и большим количеством библиотек, окружающих их?
Я надеюсь, что этот пост не будет закрыт как "слишком субъективный", мне просто интересно, что отличает Дилана от всех этих других языков программирования!
3 ответа
Здесь есть несколько вопросов в одном.
Что такое Дилан? Прочитайте его страницу в Википедии, это хорошее начало. Уникальность Dylan в том, что это Lisp, без синтаксиса Lispy. Это было привлекательным для некоторых людей, когда Дилан был впервые определен. Более того, Дилан достиг довольно функциональной макро-системы (которая, возможно, является одним из сильнейших профессионалов Lisp) без синтаксиса Lisp.
Почему Дилан сегодня интересен? Ну, это просто еще один язык программирования, причем довольно старый. Он был разработан еще в начале 90-х, поэтому существует много новых языков. Но если кто-то любит путь Lisp минус синтаксис, Дилан, вероятно, является лучшим выбором.
Чем интересен Дилан? Это субъективный вопрос, от которого многое зависит. Какие у тебя интересы? Каковы ваши цели? Какими текущими инструментами вы пользуетесь и не довольны ли вы ими?
Они действительно крутая вещь о Дилане - его объектная система. Common Lisp имеет объектную систему, называемую CLOS (общая объектная система lisp), и он в основном является непопулярным ультра всех объектных систем, но у CL есть проблема в том, что это своего рода нечистый дизайн. Люди Дилана хотели всю мощь CLOS, но в новом чистом дизайне.
Главное, что является особенным, это то, что вы делаете все с помощью мультиметодов, которые находятся вне объектов. Это действительно потрясающе, но преимущества трудно увидеть в начале.
Другое дело, что у Дилана есть макросистема, которая работает довольно хорошо. Я не видел лучшей макросистемы для языка с синтаксисом.
В общем, Дилан - действительно потрясающий язык, ему просто не повезло. Каждый должен попытаться выучить какой-нибудь дилан, это язык, которому нужно много учить. Люди OpenDylan унаследовали кучу кода (компилятор и библиотеки...), и они работают над тем, чтобы сделать его готовым к работе.
На первый взгляд это похоже на язык, похожий на Лисп, с обычным синтаксисом.
В таких языках, как C#, отсутствуют мощные возможности метапрограммирования Lisp, а в Lisp синтаксис выглядит уродливо для многих программистов. Дилан, кажется, сочетает в себе черты lisp с синтаксисом "нормальных" языков, что, безусловно, является привлекательной комбинацией.