Size: a a a

Clojure — русскоговорящее сообщество

2020 October 15

IS

Ilshat Sultanov in Clojure — русскоговорящее сообщество
источник

IS

Ilshat Sultanov in Clojure — русскоговорящее сообщество
здесь много примеров с генераторами
источник

IS

Ilshat Sultanov in Clojure — русскоговорящее сообщество
может будет полезно :)
источник

DM

Denis Muraviev in Clojure — русскоговорящее сообщество
ok ! в случае опасных операций а * когда?
источник

DM

Denis Muraviev in Clojure — русскоговорящее сообщество
ушки понятно в случае динамических переменных
источник

DM

Denis Muraviev in Clojure — русскоговорящее сообщество
а вот прост переменная или функция с суффиксом *
источник

DM

Denis Muraviev in Clojure — русскоговорящее сообщество
или не устоявшаяся фигня
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
все суфиксы/префиксы в названии фунок в кложуре исключительно на усмотрение автора, никто не гарантирует что foo! взорвется или породит сайдэффект.
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
У меня такой конвеншн

Суффиксы:
! — функция с сайдэффектами

* — "приватная версия", т.е. например, есть
update, который обработает аргументы и вызовет update*

'
—  слегка изменная переменная
(let [ctx' (update-in ctx path foo)] ...)
Наличие таких переменных в количестве более, чем одной или с более, чем одним уровнем вложенности (ctx'') ведет трудночитаемому коду и сигнализирует о том, что хорошо бы придумать нормальное имя переменной

? — функция предикат, вернет булиан

Префиксы:
is- — булиан, как правило получается так
(let [is-x-empty (empty? x)] ...)

* — что-то, что можно дерефнуть

- — не знаю как сформулировать, помогити
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
У меня такой конвеншн

Суффиксы:
! — функция с сайдэффектами

* — "приватная версия", т.е. например, есть
update, который обработает аргументы и вызовет update*

'
—  слегка изменная переменная
(let [ctx' (update-in ctx path foo)] ...)
Наличие таких переменных в количестве более, чем одной или с более, чем одним уровнем вложенности (ctx'') ведет трудночитаемому коду и сигнализирует о том, что хорошо бы придумать нормальное имя переменной

? — функция предикат, вернет булиан

Префиксы:
is- — булиан, как правило получается так
(let [is-x-empty (empty? x)] ...)

* — что-то, что можно дерефнуть

- — не знаю как сформулировать, помогити
(defn create-ctx []
 (let [*ctx  (atom {})
       *ctx' (swap! *ctx assoc :self *ctx)]
   @*ctx'))

(defn set-ctx! [ctx]
 (reset! (:self ctx) ctx))

(defn transformable? [ctx]
 (get-in ctx [...]))

(defn transform* [ctx path fn]
 (update-in ctx path fn))

(defn transform [ctx args]
 (let [is-ctx-transformable (transformable? ctx)]
   (if is-ctx-transformable
     (apply transform* ctx args)
     ctx)))

(defn do-some-work! [ctx] ...)

(defn -main [& args]
 (let [ctx (create-ctx)]
   (do-some-work! ctx)
   (set-ctx! (apply transform ctx args))))
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
(defn create-ctx []
 (let [*ctx  (atom {})
       *ctx' (swap! *ctx assoc :self *ctx)]
   @*ctx'))

(defn set-ctx! [ctx]
 (reset! (:self ctx) ctx))

(defn transformable? [ctx]
 (get-in ctx [...]))

(defn transform* [ctx path fn]
 (update-in ctx path fn))

(defn transform [ctx args]
 (let [is-ctx-transformable (transformable? ctx)]
   (if is-ctx-transformable
     (apply transform* ctx args)
     ctx)))

(defn do-some-work! [ctx] ...)

(defn -main [& args]
 (let [ctx (create-ctx)]
   (do-some-work! ctx)
   (set-ctx! (apply transform ctx args))))
Выдуманный пример напичканный этими перфиксами и суффиксами
источник

KR

Kostyantin Randomnam... in Clojure — русскоговорящее сообщество
чет мне твой конвенш про булеаны меньше нравится чем x-empty?
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Kostyantin Randomname
чет мне твой конвенш про булеаны меньше нравится чем x-empty?
А вот тогда не понятно, является ли это функцией
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
(let [x-empty? (partial empty? x)] ...)
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
У меня такой конвеншн

Суффиксы:
! — функция с сайдэффектами

* — "приватная версия", т.е. например, есть
update, который обработает аргументы и вызовет update*

'
—  слегка изменная переменная
(let [ctx' (update-in ctx path foo)] ...)
Наличие таких переменных в количестве более, чем одной или с более, чем одним уровнем вложенности (ctx'') ведет трудночитаемому коду и сигнализирует о том, что хорошо бы придумать нормальное имя переменной

? — функция предикат, вернет булиан

Префиксы:
is- — булиан, как правило получается так
(let [is-x-empty (empty? x)] ...)

* — что-то, что можно дерефнуть

- — не знаю как сформулировать, помогити
А зачем "is", если так же можно поставить"?" ?
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
А зачем "is", если так же можно поставить"?" ?
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
У меня такой конвеншн

Суффиксы:
! — функция с сайдэффектами

* — "приватная версия", т.е. например, есть
update, который обработает аргументы и вызовет update*

'
—  слегка изменная переменная
(let [ctx' (update-in ctx path foo)] ...)
Наличие таких переменных в количестве более, чем одной или с более, чем одним уровнем вложенности (ctx'') ведет трудночитаемому коду и сигнализирует о том, что хорошо бы придумать нормальное имя переменной

? — функция предикат, вернет булиан

Префиксы:
is- — булиан, как правило получается так
(let [is-x-empty (empty? x)] ...)

* — что-то, что можно дерефнуть

- — не знаю как сформулировать, помогити
Слегка измененная это как раз *, если традиционно
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Dmytro Lispyvnyi '(🌲 🍺)
Слегка измененная это как раз *, если традиционно
Тогда от "приватной" функции не отличить
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
Тогда от "приватной" функции не отличить
Приватность обозначается иначе
источник

DL

Dmytro Lispyvnyi '(🌲... in Clojure — русскоговорящее сообщество
Метаданными
источник