This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2015-12-31
Channels
- # admin-announcements (31)
- # beginners (8)
- # boot (277)
- # cider (9)
- # cljs-dev (15)
- # cljsrn (2)
- # clojars (22)
- # clojure (132)
- # clojure-russia (65)
- # clojurescript (53)
- # datavis (23)
- # datomic (1)
- # hoplon (9)
- # ldnclj (9)
- # lein-figwheel (1)
- # leiningen (2)
- # off-topic (3)
- # om (72)
- # proton (1)
- # quil (2)
- # re-frame (23)
- # reagent (33)
- # ring-swagger (2)
- # yada (5)
А 0xff - это просто число в шестнадцатеричном виде 255, которое при касте к числу (не байту) дало 255.
Ну видишь же, кложура она не сама по себе, а на java платформе. Поэтому это тоже нужно учитывать.
Прочитал счас чутка коментов вот тут https://news.ycombinator.com/item?id=10812198, среди прочего:
[Erlang] also driving almost all of the non-Google ad networks, has a pretty sizable footprint in high-finance, and increasing numbers of online gaming (mobile and console) backends are built with it (or its younger cousin, Elixir).
Так как я занимаюсь сейчас именно этим (рекламой) то что-то заинтересовало. Тут вроде кто-то постил что он начал ерланг копать, как чо?Эрланг хороший, чо. Только вербозненький и с ошибками в дизайне синтаксиса, который Армстронг так и не решился исправить
ну еликсир как понимаю фиксит именно синтаксис (уебищный согласен)
оу да?
если хочется акторов, то есть, например https://github.com/puniverse/pulsar
пульсар видел ага. Да я не очень уверен что хочу Так, размышляю вслух, выслушиваю мнения
может кто знает - как мне получить file path текущего ClojureScript файла?
(defmacro t [] (str *file*)) ;; "/private/var/folders/90/v8zfw8f91n58nns2p47y_xh80000gn/T/form-init7551667681750568197.clj"
через *file*
чота не получается
все оказалось проще
;; clojure
(defmacro path [ns] (:file (meta ns)))
;; clojurescript
(path (str *ns*))
без макроса тока никак - вроде мета должна работать и так, но чота в рантайме она пустая уже у неймспейса
да неа, с макросом нормально я все равно его пишу - так что пучком все
получается вот так если кому интересно:
(defmacro t [n] (meta n))
(.log js/console “Without macro:" (str (meta (var *ns*))))
(.log js/console “With macro:" (str (t (var *ns*))))
Without macor:
{:ns cljs.core, :name *ns*, :file "cljs/core.cljs", :end-column 7, :column 1, :dynamic true, :line 28, :end-line 32, :arglists (), :doc "Var bound to the current namespace. Only used for bootstrapping.", :jsdoc ["@type {*}"], :test nil}
With macros:
{:file "/private/tmp/qwerty/src/qwerty/state.cljs", :line 8, :column 34, :end-line 8, :end-column 44}
а кста, да - если дать локальную переменную то все работает и без макроса:
(.log js/console "WITHOUT:" (str (meta (var app-state))))
WITHOUT: {:ns qwerty.state, :name app-state, :file "/private/tmp/qwerty/src/qwerty/state.cljs", :end-column 15, :column 1, :line 4, :end-line 4, :arglists (), :doc nil, :test nil}
хотя вот не уверен насчет оптимизаций
а ничо в кложуре нет чтоб не повторять два раза id вот тут? (when (= (:id client) (:id sender)) ...
ну лет оно понятно
даже обобщу:
(when (or (not (= (:id client) (:id sender)))
(and (= (:id client) (:id sender))
(> (:tid client) (:tid sender))))
…)
можно это как-нить покрасивее сделать? надо запустить код когда id разные или когда одинаковы но tid меньшеа туплю, зафега я второй раз проверяю на равенство айдишников. Спасибо @artemyarulin. Ю велкам @artemyarulin.
да запилить то все можно, думал мож уже есть чо
вооо!
вот с ним бы было круто да
(compare-by :id client sender)
(Всех с нг)
С Новым Годом!