This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-06-21
Channels
- # aws (2)
- # aws-lambda (1)
- # beginners (62)
- # cider (31)
- # cljs-dev (16)
- # cljsrn (8)
- # clojure (115)
- # clojure-greece (3)
- # clojure-israel (2)
- # clojure-italy (13)
- # clojure-nl (8)
- # clojure-russia (5)
- # clojure-spec (3)
- # clojure-uk (146)
- # clojurescript (108)
- # clojutre (5)
- # code-reviews (3)
- # cursive (48)
- # datomic (22)
- # editors (20)
- # emacs (7)
- # fulcro (16)
- # graphql (10)
- # mount (2)
- # off-topic (47)
- # onyx (22)
- # re-frame (100)
- # reagent (5)
- # reitit (7)
- # ring-swagger (6)
- # rum (5)
- # shadow-cljs (51)
- # specter (2)
- # tools-deps (95)
- # vim (10)
- # yada (7)
Anybody knows what is the reasoning of using a def
instead of atom
for com.stuartsierra.component
? Am I missing something?
@mg Development context, most of the example I see use something like set-init!
which just calls alter-var-root
@mg like this https://github.com/stuartsierra/component.repl/blob/master/src/com/stuartsierra/component/repl.clj
Because atom
is for synchronized mutation and then you need a deref
(or @
) whereas this workflow does not need synchronization because the only change to the value is at startup of your app (and shutdown) -- and you don't need deref
with a simple Var.
You certainly could store it in an atom
and use swap!
to start / stop the component, if you don't mind the additional deref
to access the component.
@lockdown- Probably that it combines all the functions steps together without creating intermediate sequence results from each step.
@lockdown- I'm not sure I'd it's "mostly" that, but that is certainly a big plus.
The decoupling of the transformations from the input and output types is also important.
For example, I can write a transducer and it can be applied to a collection, to a core.async
channel, to a reducible-query
... and the result can be fed into all sorts of different things.
Ok, gonna read up on them, was going to postpone them but they look like a nice abstraction
I have just started clojure does anyone uses VScode for clojure. If yes what plugin do you guys suggest me? Main feature i want to have is jumping to the functions definitions, please help.
I have used Clojure plugin by Andrey Lisin, func jump is only working for the inbuild funcs like println
, reduce
the jump is not working for my defined functions, please help
lighttable was abandoned in favor of eve which hasn't been released and totally won't be abandoned
Hi! I want to create a csv file without saving it on the disk (in order to return it to the client) i have noticed that write-csv can work with a writer instead of a file but i tried it with no success. Tried something like that:
(csv/write-csv (java.io.OutputStreamWriter. ) csv-data)
any suggestions will be appreciated !!This is random but does anyone know what is used to make these graphics? http://www.clara-rules.org/img/diagram/RULE.png
In Luminus is there any equivalent to like bower or npm deps for third party assets?
Just to be clear (since this is #beginners ) -- there are also plenty of clojurescript libs to pull in by adding them to project.clj
, some of which wrap well-known JS libs. There are also externs/wrappers for a ton of JS libs at https://cljsjs.github.io/ .
In my experience, it's not terribly common for people to need to pull in JS stuff directly by adding the JS file to the project.
Probably not what you were looking for, but just in case...
@matt.raykowski webjars is mechanism where people have packaged certain third party web things as maven artifacts, so you can put them in your project file like everything else. Then you need to add the middleware to serve them
in my experience it worked to treat it just as I would css. The starting index page contains a tag that pulls the resource in, and the resource is in the jar via the resources directory so that the server can send it to the client
advanced compilation had nothing to do with requiring the resource, in my experience
from what I've seen, there are packages that give you js plus externs, and attempts to auto-generate externs. I can't vouch for any of them
You want a macro that works just like Clojure's built-in "do", as an exercise to understand how to do it? Or if you want something that behaves differently than built-in "do", how do you want its behavior to differ?