Dylan — динамічна об'єктно-орієнтована мова програмування, націлена на швидку розробку програм; розроблений насамперед зусиллями Apple.

Dylan
Парадигма об'єктно-орієнтоване програмування[1], функційне програмування[1] і мультипарадигмальне програмуванняd[1]
Дата появи 1992
Розробник Apple і Університет Карнегі-Меллон
Останній реліз 2022.1 (28 листопада 2022)[2]
Система типізації динамічна типізація[d] і строга типізація
Під впливом від LISP, CLOS і Common Lisp
Платформа кросплатформова програма
Репозиторій вихідного коду github.com/dylan-lang/opendylan
Вебсайт opendylan.org

При необхідності, пізніше можна оптимізувати програми введенням інформації про типи. Dylan підтримує множинну спадковість, поліморфізм і багато інших парадигм. Мова загального призначення, придатна як для прикладного, так і для системного програмування. Включає в себе збирання сміття, перевірки в ході виконання, відновлення після помилок і модульну систему.

Ім'я мови Dylan означає «DYnamic LANguage».

Історія ред.

Ця мова народилася в Apple на початку 1990 р. ЇЇ розробники хотіли створити покращений гібрид з елегантного варіанту LISP — Scheme, системи ООП CLOS від потужного промислового варіанту LISP — Common Lisp та ідеями з Smalltalk — і все це з нормальною загальноприйнятою системою позначень алголо/паскале-подібного синтаксису. Незабаром після цього аналогічний проект був запущений в Університеті Карнегі-Меллон — над створенням компілятора Dylan працювала знаменита команда Карнегі-Меллон з реалізації CMU Common Lisp. Іншу, комерційну версію з повною IDE випустила компанія Harlequin.

Синтаксис ред.

Спочатку Dylan мав синтаксис, заснований на префіксній нотації та S-виразах - як у мові програмування LISP. На момент завершення розробки синтаксис набув алголоподібного вигляду - з огляду на те, що він знайомий більш широкому колу програмістів. Синтаксис був розроблений Michael Kahl. Його докладно описано в Dylan Reference Manual [Архівовано 28 лютого 2021 у Wayback Machine.](англ.).

Лексичний синтаксис ред.

Dylan не чутливий до регістру. Дозволяється використовувати дефіс (мінус) для поєднання частин ідентифікаторів із кількох слів (іноді їх називають "lisp-case" або "kebab-case[en]"). Ця угода про найменування поширена в мовах типу LISP.

Окрім буквено-цифрових символів і знаків дефіс (мінус), дозволяється використовувати певні небуквенно-цифрові символи як частину ідентифікаторів. Ідентифікатори не можуть складатися тільки з цих небуквенно-цифрових символів або лише з числових символів. Якщо є якась неясність, використовується пробіл.

Посилання ред.

Література ред.

  • Dylan Programming, by Feinberg, Keene, Mathews, and Withington.
  • Dylan Reference Manual, by Shalit, Moon, and Starbuck
  • Eric Kidd. Getting Started with Dylan
  1. а б в https://opendylan.org/
  2. https://opendylan.org/news/2022/11/28/new-release.html