Size: a a a

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

2020 December 10

DF

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

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
@BlackFoxInTheVoid, на самом деле можно.
(keyword "kw with spaces") вполне себе вычисляется в значение, тип этого значения - clojure.lang.Keyword, но проблемы начинаются сразу после print этого значения.
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
Раз зашёл разговор про парсинг URL. Я ещё вот на что наткнулся сегодня:
источник

DF

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

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
тэги: bidi keyword path segment parameter star
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
и ещё тэги: match route params injection regex
источник

DF

Damir Farazetdinov in Clojure — русскоговорящее сообщество
почесал репу и решил, что на багу в bidi не тянет.
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
Pavel Peganov
Прикольно. Ruby таким уже переболел, в символах. Теперь в нём есть синтаксис с кавычками, а-ля: :"hello world".
Вообще это кажется лишним ограничением и/или багом.
каким образом это бага если это про edn. по его спеке кейворд определен как https://github.com/edn-format/edn#keywords
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Kirill Chernyshov
каким образом это бага если это про edn. по его спеке кейворд определен как https://github.com/edn-format/edn#keywords
Очень просто – функция keyword должна швырять ошибку.
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
The2lb3oz4dr10½grOfHedgehogs
Кто-нибудь использует EDN как формат для обмена данными? Как вы обрабатываете то, что кложура может нагенерить такую еднку, которую не сможет корректно считать?

(-> {(keyword "test keyword with whitespaces") "value1"
    (keyword "second key")                    "value2"
    :third-key                                "value3"}
   pr-str
   read-string)
;; => {:test      keyword,
;;     with       whitespaces,
;;     "value1"   :second,
;;     key        "value2",
;;     :third-key "value3"}
расширяя дата литералами например так #edn.invalid/keyword [“string with spaces”]
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
Pavel Peganov
Очень просто – функция keyword должна швырять ошибку.
функция keyword к edn не имет никакого отношения
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Kirill Chernyshov
функция keyword к edn не имет никакого отношения
Имеет и самое прямое. Она формирует значение, от которого ожидается представимость в edn.
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Ivan Grishaev
Используем в кафке. Надо избегать таких ключей. Обычно ключи задают явно в коде, так что проблем быть не должно. Если от пользователя приходят такие данные, то проверяться спекой, чтобы не было пробелов
parse json с keywordize-keys такие хешмапы очень лего делает, к сожалению
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
Pavel Peganov
Имеет и самое прямое. Она формирует значение, от которого ожидается представимость в edn.
это где такое утверждается?
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Kirill Chernyshov
это где такое утверждается?
Реализацией. Она либо корректно выдаёт весь доступный спектр keyword'ов, либо значение по факту другого типа.
Кто-то может это назвать design flaw, нежели багом. Я лично считаю багом.
источник

PP

Pavel Peganov in Clojure — русскоговорящее сообщество
Я считаю, что там что-то явно должно падать, либо keyword, либо преобразование в edn.
источник

KC

Kirill Chernyshov in Clojure — русскоговорящее сообщество
напиши на ask.clojure.org
посмотрим что ответят
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Pavel Peganov
Реализацией. Она либо корректно выдаёт весь доступный спектр keyword'ов, либо значение по факту другого типа.
Кто-то может это назвать design flaw, нежели багом. Я лично считаю багом.
Реализация чего? clojure.lang.Keyword?
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
источник

T

The2lb3oz4dr10½grOfH... in Clojure — русскоговорящее сообщество
Вот тут в FAQ энтри о нечитаемых кивордах
источник