Запитання з тегом «clojure»

Clojure - мова загального призначення, що підтримує інтерактивну розробку, яка заохочує функціональний стиль програмування та спрощує багатопотокове програмування.

4
Що мав на увазі Річ Хікі, коли він сказав: "Вся ця специфіка [інтерфейсів / класів / типів] вбиває ваше повторне використання!"
У 29-хвилинній програмі Річ Хікі, що викликає роздуми на готовій конференції, " Значення цінностей ", він говорить про накладні витрати на мову, як Java, і робить заяву на кшталт "Усі ці інтерфейси вбивають ваше повторне використання". Що він означає? Це правда? У пошуках відповідей я натрапив на: Принцип найменших знань …

3
Що так чудово в Clojure? [зачинено]
Нещодавно я дивився на Clojure, і я натрапив на цю посаду в Stackoverflow, яка вказує на деякі проекти, що слідують за найкращими методами, і загальний хороший код Clojure. Мені хотілося обробити мову, прочитавши кілька основних навчальних посібників, тому я ознайомився з деякими проектами "реального світу". Подивившись на ClojureScript і Compojure …
40 clojure 

6
Чому погана зв'язок між функціями та даними погана?
Цю цитату я знайшов у « Радості Клоджура » на с. 32, але хтось сказав те ж саме мені під час вечері минулого тижня, і я чув це також і в інших місцях: Недоліком об'єктно-орієнтованого програмування є тісний зв'язок між функцією та даними. Я розумію, чому непотрібна зв'язок погана в …

7
C # Dev - я спробував Lisps, але я не розумію [закрито]
Після кількох місяців навчання та гри з Ліспом, як з CL, так і з Clojure, я все ще не бачу вагомих причин писати що-небудь замість C #. Мені дуже хотілося б переконливих причин або для того, щоб хтось зазначив, що я пропускаю щось дійсно велике . Сильні сторони Lisp (за …
37 clojure  lisp 

7
Які функціональні еквіваленти обов'язкових заяв про перерви та інших перевірок циклу?
Скажімо, я нижченаведена логіка. Як це записати у функціональне програмування? public int doSomeCalc(int[] array) { int answer = 0; if(array!=null) { for(int e: array) { answer += e; if(answer == 10) break; if(answer == 150) answer += 100; } } return answer; } Приклади в більшості блогів, статей ... Я …

4
Які обмеження встановлює JVM для оптимізації хвостових викликів
Clojure не виконує оптимізацію хвостових викликів самостійно: коли у вас є рекурсивна функція хвоста, і ви хочете, щоб її оптимізували, ви повинні використовувати спеціальну форму recur. Аналогічно, якщо у вас є дві взаємно рекурсивні функції, ви можете оптимізувати їх лише за допомогою trampoline. Компілятор Scala здатний виконувати TCO для рекурсивної …
36 scala  clojure  jvm  tail-call 

13
Проблеми (такі як підтримка) в розвитку з непопулярною мовою
Я розробляю якусь програму з clojure (lisp) наодинці в своїй команді. Він починається як невеликий додаток. Без проблем. Але оскільки він має функції та розширює область, це стає важливою програмою. Я хвилювався за технічне обслуговування чи щось таке. Ніхто в моїй команді не знає приналежності чи лісу, а також не …

3
На шляху до Просвітництва: схема, звичайний ліс, кложур? [зачинено]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб це було темою для обміну стеками програмного забезпечення. Закрито 8 років тому . Багато людей, які розумніші за мене, продовжують писати про те, коли ви дізнаєтесь Лісп, це робить вас кращим програмістом, тому …

5
Чому спільнота Lisp вважає за краще накопичувати всі дужки в кінці функції?
Чому спільнота Lisp воліє накопичувати всі дужки в кінці функції: (defn defer-expensive [cheap expensive] (if-let [good-enough (force cheap)] good-enough (force expensive))) Чому б не застосувати такий конвент, як C або Java? Ну гаразд, Лісп набагато старший за ці мови, але я говорю про сучасних Лісперсів. (defn defer-expensive [cheap expensive] (if-let …

1
Чи реалістична доставка додатка Clojure для настільних ПК?
Зараз я доставляю настільний додаток Java. Це звичайний старий додаток Java 5 для Java / Swing, і поки що все працювало чудово. На Java 5 було націлено, оскільки деякі користувачі перебувають на версії OS X / комп’ютерах, які ніколи не матимуть Java 6 (ми можемо скоро скасувати це обмеження і …


3
Чому для деяких функціональних мов потрібна транзакційна пам'ять програмного забезпечення?
Функціональні мови, за визначенням, не повинні підтримувати змінні стану. Чому тоді Haskell, Clojure та інші забезпечують реалізацію транзакційної пам'яті програмного забезпечення (STM)? Чи існує конфлікт між двома підходами?

3
Чи має Clojure продовження / супроводи / тощо?
Я почав програмувати з Python, і мене дуже збентежили такі поняття, як супроводи та закриття. Тепер я думаю, що знаю їх на якомусь поверхневому рівні, але я ніколи не відчував цього "просвітницького" моменту, тому вирішу вчитися Клуджуре. Я купив книгу Стюарта Хэллоуей, і це добре, але коли я подивився на …

6
Найкращі практики написання коментарів та документації
Коментувати сьогодні простіше, ніж будь-коли. У Java є кілька приємних прийомів пов'язування коментарів до класів, і Java IDE добре допомагає робити оболонки коментарів для вас. Такі мови, як Clojure, навіть дозволяють додавати опис функції в сам код функції як аргумент. Однак ми все ще живемо в епоху, коли часто є …

4
"Використовуйте карту замість класу для представлення даних" -Річ Хікі
У цьому відео Річ Хікі , творець Clojure, він радить використовувати карту для представлення даних, а не використовувати клас для їх представлення, як це робиться на Java. Я не розумію, як це може бути краще, оскільки як користувач API може знати, що таке вхідні ключі, якщо вони просто представлені у …
19 java  design  class  clojure  map 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.