This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-03-01
Channels
- # announcements (26)
- # babashka (58)
- # bangalore-clj (1)
- # beginners (48)
- # bitcoin (1)
- # chlorine-clover (9)
- # clara (7)
- # clj-kondo (11)
- # cljs-dev (10)
- # cljsrn (36)
- # clojars (11)
- # clojure (161)
- # clojure-europe (39)
- # clojure-italy (2)
- # clojure-nl (6)
- # clojure-uk (14)
- # clojured (1)
- # clojurescript (38)
- # conjure (25)
- # core-async (18)
- # cursive (19)
- # datascript (9)
- # datomic (11)
- # emacs (10)
- # events (2)
- # figwheel-main (2)
- # fulcro (44)
- # funcool (5)
- # girouette (1)
- # graalvm (6)
- # jobs (1)
- # lsp (93)
- # malli (3)
- # membrane (3)
- # off-topic (17)
- # pedestal (2)
- # polylith (12)
- # re-frame (2)
- # remote-jobs (1)
- # shadow-cljs (47)
- # specter (2)
- # startup-in-a-month (1)
- # tools-deps (4)
Hello! I was thinking about membrane's
(defeffect ::fire-missiles! [missile target]
...)
Coming from Fulcro, I really appreciate navigability, i.e. the ability to click on a thing in my IDE and get to its definition. I believe it really aids maintainability of a project using that.
Currently I do not think that in any standard IDE I could click on [::fire-missiles! :space-missile :moon]
and be brought to the definition of the effect.
Of course I could simply use symbols instead of keywords: create my own
(defeffect2 fire-missiles! [missile target] ...)
that both defines an effect and also, when called as a function, returns a vector of its name as a keyword + arguments, i.e. [::fire-missiles! missile target]
. Then I could return intents by this function-like call (fire-missiles! :space-missile :moon)
. This gives me the navigability I want - provided I remember to tell my IDE that defeffect2
is a defn-like macro -while still fully integrating with membrane.
My point is: wouldn't it be worth making this the default? I do not think we loose anything and we gain navigability?Improving navigability would be great! There's a few related issues I want to think through before making changes. I'll file an issue with my thoughts tomorrow.
❤️ 3
here's the issue: https://github.com/phronmophobic/membrane/issues/16