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

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

4
Декоратори Python та макроси Lisp
Дивлячись на декораторів Python, хтось зробив заяву, що вони настільки ж потужні, як макроси Lisp (особливо Clojure). Дивлячись на приклади, наведені в PEP 318, мені здається, що вони просто фантазійний спосіб використання простих старих функцій вищого порядку в Lisp: def attrs(**kwds): def decorate(f): for k in kwds: setattr(f, k, kwds[k]) …
18 python  lisp  clojure  macros 

1
Як написати читаний код Clojure?
Я новачок у Clojure. Я можу зрозуміти код, який я пишу, але пізніше це стає занадто важко зрозуміти. Дуже складно узгодити дужки. Яких загальних умовних положень слід дотримуватися щодо називання конвенцій та відступів у різних ситуаціях? Наприклад, я написав зразок деструктуризації зразка, щоб зрозуміти, але це виглядає зовсім нечитабельним вдруге. …

3
Наскільки незалежний Clojure від Java?
Я зовсім новачок у світі Clojure. Я ціную той факт, що можна легко отримати доступ до всіх бібліотек Java через функції інтеропу Clojure, але мені було цікаво, скільки Clojure стоїть на власних ногах. Звичайно, є деякі платформи, як-от Android, де сумісність з Java завжди буде потрібна, оскільки основні бібліотеки написані …

1
Зіставлення шаблонів у Clojure vs Scala
Які ключові відмінності між узгодженням шаблону у цих двох мовах? Я маю на увазі не синтаксис, а можливості, деталі реалізації, діапазон випадків використання та необхідність. Програми Scala (наприклад, Lift and Play) з гордістю говорять про вміння мов, які відповідають майстерності. Clojure, з іншого боку, має бібліотеку, core.match і вбудований в …

2
Чи можемо ми побудувати функціональний комп'ютер?
Зрештою, як це зробив FP, зрештою, всі наші програми структуровані. Тобто, не має значення, наскільки чистими чи функціональними ми їх робимо - вони завжди переводяться на збірку, тому те, що насправді працює за капотами, - це інструкції, стани та петлі. Ми наче наслідуємо FP. Як апаратний ноб, моє питання: чому …

2
Чи квадратні дужки і фігурні дужки в Clojure все ще є S-виразами?
Я намагаюся дізнатися Лісп і дивлюся на всі Ліпси там і на їх відмінності. Я бачу, що в деяких реалізаціях схеми ви можете використовувати квадратні дужки взаємозамінно з круглими дужками для читабельності, тому, оскільки вони обробляються однаково, я припускаю, що вони все ще є просто S-виразами, як і всі інші. …
12 lisp  clojure 

1
Яка практична проблема є наслідком відсутності гігієнічних макросів у Clojure?
Я чув, що макроси Clojure простіше писати, але не такі надійні, як гігієнічні макроси Ракетки. Моє запитання має 2 частини: Чим gensymвідрізняються гігієнічні макроси? Що забезпечують макроси ракетки, які Clojure не роблять? (будь то безпека, компостування чи що-небудь)

2
Наближається SICP в Clojure замість схеми
Я бакалавр третього курсу програми інженерії програмного забезпечення, і я висунув ідею прочитати SICP раднику, щоб отримати глибше і більш фундаментальне розуміння принципів, що стоять за всім цим програмним забезпеченням, яке ми розробляємо. Він запропонував не вивчати схему для завершення книги (бо це не так часто, як сучасні діалекти Ліспа), …
11 clojure  scheme  sicp 

3
Ткання байтового коду проти макросів Lisp
Я читав про бібліотеки, які люди писали для таких мов, як Java та C #, які використовують байтове плетіння коду, щоб виконувати такі дії, як перехоплення функцій викликів, вставлення коду журналу тощо. Я також читав макроси Lisp / Clojure у намагання краще зрозуміти, як їх використовувати. Чим більше я читаю …

2
Як нова розробка Java вплине на її сумісність з такими мовами, як Scala та Clojure?
Наскільки я розумію, і Scala, і Clojure були розроблені як нові мови залежать від СВМ та легко інтегруватися з кодом Java, в тому сенсі, що вони дозволяють використовувати класи Java всередині коду Scala та Clojure. Починаючи з Java 8 (а може, ще сильніше з наступними версіями Java), відбудуться зміни в …
11 java  scala  clojure 

3
Чому ми не можемо записати вкладені скорочені функції у Clojure?
Я намагався сьогодні оцінити вираз Clojure за допомогою вкладених скорочених функцій, і це мені не дозволило. Вираз: (#(+ % (#(+ % (* % %)) %)) 5) ; sorry for the eye bleed Вихід був: IllegalStateException Nested #()s are not allowed clojure.lang.LispReader$FnReader.invoke (LispReader.java:630) ...and a bunch of other garbage

3
Передовий досвід функціонального програмування Scala або Clojure
Я багато робив кодування для самостійного вивчення, мав певний досвід роботи з моделями паралельного програмування: Актори, Пам'ять транзакційних програм, Потік даних. Коли я намагаюся застосувати ці архітектури до реального життя - до веб-додатків із високим навантаженням - будь-яка модель не підтримує довговічність та стійкість даних. Реальні життєві завдання потребують збереження …

1
Приклад комбінованості пам'яті транзакційної програми
Однією з головних переваг транзакційної пам'яті програмного забезпечення, яка завжди згадується, є компостування та модульність. Для отримання більших компонентів можна комбінувати різні фрагменти. У програмах на основі блокування це часто не так. Я шукаю простий приклад, що ілюструє це фактичним кодом. Я вважаю за краще приклад у Clojure, але Haskell …
11 haskell  clojure  stm 

3
Якщо ви можете використовувати def для перевизначення змінних, як це вважається незмінним?
Намагаючись навчитися Clojure, ви не можете допомогти, але постійно говорять про те, як Clojure стосується незмінних даних. Але ви можете легко змінити змінну за допомогою defправа? Я розумію, що розробники Clojure уникають цього, але ви можете уникнути зміни змінних на будь-якій мові так само. Чи може хтось мені пояснити, як …
10 clojure 

2
Де ми ставимо код «запитуючи світ», коли ми розмежовуємо обчислення від побічних ефектів?
Відповідно до принципу розділення команд-запитів , а також мислення в даних і DDD з презентаціями Clojure слід відокремлювати побічні ефекти (модифікуючи світ) від обчислень та рішень, щоб було легше зрозуміти і перевірити обидві частини. Це залишає без відповіді питання: де відносно кордону слід поставити "запитання світу"? З одного боку, запит …

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