This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-04-11
Channels
- # aws (6)
- # beginners (167)
- # cider (41)
- # cljs-dev (6)
- # cljsrn (3)
- # clojure (399)
- # clojure-dusseldorf (1)
- # clojure-nl (2)
- # clojure-spec (3)
- # clojure-uk (47)
- # clojurescript (16)
- # core-async (8)
- # cursive (56)
- # datomic (14)
- # devcards (1)
- # docs (2)
- # duct (2)
- # editors (3)
- # emacs (3)
- # fulcro (178)
- # graphql (10)
- # off-topic (107)
- # onyx (7)
- # pedestal (21)
- # planck (13)
- # re-frame (58)
- # reagent (76)
- # ring-swagger (3)
- # shadow-cljs (85)
- # slack-help (2)
- # sql (1)
- # tools-deps (11)
- # uncomplicate (5)
- # vim (24)
- # yada (4)
Good morning!
I have never heard of today’s random core function of the day:
-------------------------
clojure.core/->VecNode
([edit arr])
Positional factory function for class clojure.core.VecNode.
seems to exist to support
-------------------------
clojure.core/vector-of
([t] [t & elements])
Creates a new vector of a single primitive type t, where t is one
of :int :long :float :double :byte :short :char or :boolean. The
resulting vector complies with the interface of vectors in general,
but stores the values unboxed internally.
Optionally takes one or more elements to populate the vector.
Morning Back to the grind stone today.
månmån
It's groundhog Thursday for anyone named Jade 😉
For all perpetuity
nah, he's fighting off the evil dead with a chainsaw @otfrom
@yogidevbear @otfrom You're both gonna need bigger shovels for the amount of emoji digging you're doing.
Hmm, from the fading on my keyboard my most used keys are a, s, e and l. I wonder why...
What is that @jasonbell? It's got more than strings. It doesn't look like a sitar
@yogidevbear It's a Chapman Stick, ten strings.
I've never heard of a Chapman Stick before... TIL
I'm sure @jasonbell will agree it sounds best when it is accompanying my singing.
You play a Chapman Stick? Very cool!
my initial mental image was https://en.wikipedia.org/wiki/ChapStick … I’m glad for the photo XD
oh, it was the right thing to do in the absence of any decent & maintained nio lib for clojure... it's the lack of that lib which i'm feeling, but i really don't have any time to look at it
it's my async-zealot viewpoint that Threads are for mapping to hardware threads and not for everyday use 🙉
You should write a clojure-centric blog about being perfectly-threaded, I'd read that
i don't really know the java NIO api, but it looks like you can specify the j.u.c.ExecutorService
ops get run on
which is similar to other non-blocking things i've worked with
anyway, we allocate almost no Threads in our system - all our i/o for db, http etc is all async, mostly netty-based via aleph and datastax/java-driver - the only area where we have some blocking stuff is InputStreams and file i/o
I'm still a bit confused though, you don't allocate a thread, but if it's async, isn't there a thread waiting to do work?
yes - there are pools of threads, but they never block... it's blocking that feels dirty
blocking pipeline uses a separate thread pool from go blocks, but afaik you aren't really using the core.async stuff anyway so I suppose that doesn't help
I think java (used to be only on solaris, is true on linux now as well I think) does m:n threading so you can have more threads than are available from the OS
yeah, i'm using manifold - i can create a Thread with a manifold.deferred/future
, which has its own pool - https://github.com/ztellman/manifold/blob/master/docs/execution.md