Описание тега clojure

Clojure - это современный диалект Лиспа для виртуальной машины Java (с версиями для CLR и JavaScript). Clojure - это больше, чем просто реализация Lisp на Java, он предоставляет доступ к классам и экосистеме Java.
4 ответа

Clojure разделить список строк, накапливая результат

Я сожалею о нехватке точности в названии, но это может проиллюстрировать мое отсутствие опыта уловки. Я пытаюсь взять большой список строк и преобразовать этот список в другой список строк, объединяясь, пока накопитель не станет меньше, чем длина. Н…
19 фев '18 в 21:30
1 ответ

Что такие типы, как "clojure.lang.PersistentVector$ChunkedSeq" означают в clojure?

В словах REPL, когда я печатаю (type (seq [0 1 2 3])) и оценить его, я получил "clojure.lang.PersistentVector$ChunkedSeq", но "clojure.lang.PersistentVector" сам по себе является классом в clojure. Почему с ним есть "$ChunkedSeq" и ​​что означает но…
07 сен '14 в 14:56
1 ответ

Почему, когда я использую программу printf, не посылаю строку на вывод, а когда я использую println, она делает?

Имея простую функцию в Clojure (defn command [] (loop [] (let [input (read-line) string-tokens (string/split input #" ") tokens (map keyword string-tokens) cmd (first tokens)] (cond ;; explain the commands (= cmd :help)(do (printf "Usage:\nsearch &l…
20 апр '16 в 15:54
1 ответ

Как отладить применение аргументов к моей функции в Clojure Compiler?

Моя цель - отладить компилятор Clojure, чтобы лучше понять его. (Код моего проекта помогает в этом.) У меня есть и источник Clojure Compiler, и мой проект test установить в моей IntelliJ IDE. У меня есть clojure проект в качестве основного проекта, …
0 ответов

Могу ли я получить основной метод из другого проекта Leiningen?

Я пишу рамки. Надеюсь, я бы хотел, чтобы при реализации проектов использовался основной метод для фреймворка. В моем демо-проекте, в definition.clj Я имею: (ns definition (:gen-class)) (def widget {:this :that}) (defn -main [& args] (prn "MAIN")…
06 сен '16 в 18:10
1 ответ

При попытке создать таблицу с помощью clojure.java.sql/create-table я получаю исключение

При попытке создать таблицу с помощью clojure.java.sql/create-table я получаю исключение: batch entry 0: near "-": syntax error [Thrown class java.sql.BatchUpdateException] Вызов create-table выглядит следующим образом: (sql/create-table :stories [:…
01 авг '12 в 05:54
1 ответ

Clojure `case` не различает разные символы

Этот код работает: (case '- + :plus - :minus :unknown) ==> :minus Это тоже: (case '- + :plus '- :minus * :times :unknown) ==> :minus Это не: (case '- '+ :plus '- :minus * :times :unknown) ==> java.lang.IllegalArgumentException: Duplicate ca…
04 окт '13 в 12:31
2 ответа

Более простой способ вычисления контрольной цифры GS1 в Clojure

Я пытаюсь вычислить контрольную цифру GS1 и придумала следующий код. Алгоритм вычисления контрольной цифры: Обратный штрих-код Удалить последнюю цифру (вычисленная контрольная цифра) Добавьте цифры вместе с первой, третьей, пятой и т. Д. Цифрой, умн…
29 июл '13 в 10:34
1 ответ

Нарисуйте линии с помощью Clojure

Возможный дубликат: нарисовать линию с помощью сглаживания Я хочу рисовать линии и круги на экране с помощью Clojure, как это сделать? Может кто-нибудь вставить некоторые примеры кодов здесь? Еще одна проблема, я определяю карту: (def {:a 4, :b 5, :…
18 сен '12 в 12:57
2 ответа

Использование протокола с примитивными аргументами

Я пытаюсь определить протокол в Clojure 1.4 с примитивными аргументами (чтобы я мог избежать ненужного примитивного бокса в чувствительном к производительности коде): (defprotocol A (foo [a ^long x])) (extend-type java.lang.String A (foo [s ^long x]…
28 авг '12 в 03:58
3 ответа

Clojure - как правильно применять функции в последовательности к аргументу?

Мне не ясно, чем отличается -> а также ->> в Clojure: из справочника API кажется, что последний будет правильным способом применения нескольких функций в последовательности, т.е. (- >> xhgf) приведет к f (g (h (x))). Это связано с тем, как …
16 июн '11 в 02:04
3 ответа

Clojure идиоматический способ обновления нескольких значений карты

Это, вероятно, просто, но я просто не могу с этим справиться. У меня есть структура данных, которая является вложенной картой, например: (def m {:1 {:1 2 :2 5 :3 10} :2 {:1 2 :2 50 :3 25} :3 {:1 42 :2 23 :3 4}}) Мне нужно установить каждый m[i][i]=0…
21 сен '15 в 02:51
3 ответа

Как разделить вектор на разделитель

У меня есть вектор, который содержит числа. Структура вектора следующая: предметы произвольной длины разделитель [0 0 0 0 0] (0 повторяется 5 раз) между элементами Я хочу написать функцию split который извлекает список элементов (без разделителя): о…
08 май '14 в 19:32
1 ответ

Как вывести список файлов и каталогов в пути без рекурсивного в clojure

этот метод не может полностью удовлетворить меня, потому что он рекурсивный. Мне просто нужно перечислить файлы и каталог текущего пути. как это... пример не может напечатать это следующим образом. Спасибо!
12 окт '16 в 14:52
1 ответ

Проблема настройки электронной почты riemann

Я пытаюсь настроить riemann (для мониторинга) с оповещениями по электронной почте. Я использовал следующий раздел в моем файле riemann.config, но после перезагрузки конфигурации я получаю сообщение об ошибке, скопированной ниже. Любые мысли по устра…
27 фев '14 в 15:47
1 ответ

clojure / transducers / comp - реализация - запутано

Цель Я пытаюсь понять, как преобразователи реализованы. неразбериха Я смотрю на comp, реализуй здесь. В частности, эти строки здесь: ([] (f (g))) ([x] (f (g x))) ([x y] (f (g x y))) ([x y z] (f (g x y z))) ([x y z & args] (f (apply g x y z args)…
03 ноя '16 в 07:50
2 ответа

Кто-нибудь использует веб-тест без муравья?

Я хотел бы попробовать использовать WebTest, предпочтительно из Clojure, но я могу только обнаружить, что его функциональность представлена ​​как задачи Ant. Кажется, есть какой-то интерфейс Groovy, который подразумевает, что его можно использовать …
04 мар '11 в 01:14
1 ответ

Clojure: идиоматический способ повторения со значениями, основанными на условных выражениях

Поскольку recur может использоваться только в хвостовой позиции, как мне повторить со значением, которое зависит от вложенных условных выражений? Вот пример: (loop [a (rand-int) b 0] (if (< a 300) (recur (rand-int) 1)) (if (a < 10000) (recur (…
23 сен '14 в 20:54
2 ответа

Lein Uberjar работает Repl, а не мое приложение

У меня есть проект Clojure/Ring/Clojurescript, который я развернул с lein uberjar, затем запустите его с java -jar whatever-0.1-standalone.jar, До недавнего времени все работало нормально. Теперь, когда я запускаю его, мне предлагают REPL, вот так; …
27 авг '15 в 00:43
2 ответа

Как вы программно создаете несколько определений времени компиляции в clojure?

Я хочу создать несколько определений в файле во время компиляции без необходимости вводить все. Я хотел бы сделать что-то вроде: (ns itervals) (loop [i 0] (if (<= i 128) (do (def (symbol (str "i" i)) i) (recur (+ i 1))))) Таким образом, мы опреде…
18 янв '11 в 06:02