Fork me on GitHub
#clojurescript
<
2018-04-20
>
mfikes01:04:23

@lwhorton You can certainly write macros that expand to any code you'd like including code that has qualified keys and symbols. The trick is whether this expanded code can then be compiled.

👍 4
benzap09:04:47

I'm combing the clojurescript codebase to try and find with-out-str, but no such luck yet

hkjels09:04:37

why is it that set does not support indexOf?

thheller09:04:01

sets are unordered and not sequential so how would they?

hkjels09:04:53

ohh, so a sorted set does?

robert-stuttaford09:04:39

index-of is a mapping of value to key, i.e. vectors. sets have no values, they only have keys

robert-stuttaford09:04:24

map: explicit key, explicit value vector: implicit key (monotonic integer 0 based), explicit value set: explicit key contains? works with keys in all three instances.

robert-stuttaford09:04:16

sorted-* describes the order of the keys when enumerating them

mfikes11:04:45

@hkjels @robert-stuttaford Fortunately we have docs on this now. sequential? is part of the answer. See https://clojurescript.org/reference/javascript-api

dabrazhe12:04:36

hi all, what’s the state of the art Clojurescript at the moment? There are quite some options reagent, Om, re-frame. Question for someone who’s tried these out: what would you chose for the next project and what not?

joelsanchez13:04:00

re-frame is state management that builds on top of reagent, they are not comparable

joelsanchez13:04:23

and I would choose that (reagent with re-frame on top) without a doubt

👍 20
danielstockton14:04:37

@dennisa I would go with om for large, complex apps. Otherwise, I quite like rum.

dabrazhe14:04:18

@danielstockton Thanks, why do you like rum and for what purposes?

danielstockton14:04:57

I like rum for it's simplicity, when you don't have complicated state management requirements. It's lightweight. Om is state of the art in terms of untangling complex state management requirements.

danielstockton14:04:36

Om let's you completely decouple the state from your components. I believe re-frame does too, to some extent, but I don't think it provides the same power to reason about the state requirements of an app as a whole. Someone please correct me if I'm wrong.

danielstockton14:04:59

Om is most powerful when paired with a backend query parser.

danielstockton15:04:45

If you're trying to integrate with separate REST endpoints, then it might not be the best fit, but I would no longer say that's state of the art.

danielstockton15:04:44

You could write a parser that sits in front of separate REST endpoints though...

troglotit16:04:15

I’m working right now in Fulcro application, and, at least for me, it made right choices: afaict in Om you bring your own parser, so your application is not 100% predictable, compared to Fulcro. Even in React: people are starting adopt Apollo: they added in-memory graphql-store, to use graphql for local state, so Redux/Mobx are not necessary.

troglotit16:04:54

In Redux there’s a pattern called ICC https://slides.com/mr-mig/microsoft-to-do-23#/ in which you’re having normalized state just like in Fulcro. But comes close to it, but state structure is not demand driven.

richiardiandrea17:04:07

is there a fressian implementation for ClojureScript?

joelsanchez17:04:09

beware that it is unmaintained

joelsanchez17:04:30

I made a PR in march 2017 for encoding ArrayBuffers and it's still there untouched