Cover Image

Нещодавно засновник Cardano Чарльз Хоскінсон розповів, що ледь не створив блокчейн-платформу Cardano за допомогою мови програмування Clojure.

У дискусії X засновник Cardano нещодавно поділився захоплюючим поглядом на ранній процес прийняття рішень, який призвів до створення Cardano. Він розкрив ключовий момент: вибір між використанням Clojure, динамічного та функціонального діалекту Lisp, і Haskell, статично типізованої функціональної мови програмування.

Однак остаточне рішення було прийнято в бік Haskell під впливом потенціалу Cloud Haskell і сподівань на використання Liquid Haskell і Agda.

Я майже створив Cardano з Clojure. Ми навіть обговорювали це з cognitech кілька років тому. Я вибрав haskell замість clojure через хмарний haskell, а також надію на використання рідкого haskell/agda. Оглядаючись назад, це було б дивовижною подорожжю, якби я написав усе на clojurescript…

— Чарльз Хоскінсон (@IOHK_Charles) 30 травня 2024 р

Хоскінсон розповів про це в розмові X з Кторзом, технічним директором Cardano Foundation, оскільки обидва продемонстрували знання про різні мови програмування з особливим інтересом до Lisp, діалектом якого є Clojure.

Незважаючи на свій початковий інтерес до Clojure, Хоскінсон розповів, що він вибрав Haskell замість Clojure через Cloud Haskell, а також сподівався використовувати рідкий Haskell/agda. Cloud Haskell пропонує структуру розподілених обчислень, яка добре відповідає потребам платформи блокчейн, тоді як Liquid Haskell і Agda надають розширені можливості для формальної перевірки та забезпечення правильності коду.

Оглядаючись назад, Хоскінсон розмірковує про подорож, яка могла б бути, якби Cardano був створений за допомогою Clojure.  Він уявляє Cardano, повністю побудований на Clojure, використовуючи ClojureScript для розробки на стороні клієнта та ClojureSpec для специфікацій і тестування.

картку

Роздуми Хоскінсона сповнені не жалю, а вдумливого розгляду того, що могло бути. Цей маршрут, розмірковує він, міг бути «дивовижною подорожжю».

«Озираючись назад, це була б дивовижна подорож — написати все на Cardano за допомогою ClojureScript і ClojureSpec», — зауважив Хоскінсон.