2017-01-18
| 15:39 | scriptor | anyone know why core.async pipelines has so many intermediate channels? https://github.com/clojure/core.async/blob/2afc2dc5102f60713135ffca6fab993fb35809f0/src/main/clojure/clojure/core/async.clj#L475 |
| 15:41 | scriptor | afaict, each value from the from channel is put into a tuple of [value (chan 1)] |
| 15:41 | hiredman_ | to preserve ordering, to support multiple results from async pipelines, and uh, some other reason |
| 15:42 | hiredman_ | oh, to make sure xforms are run on certain threads |
| 15:45 | scriptor | ah, right, `results` ensures ordering since the result channels are in order |
| 15:45 | hiredman_ | https://ce2144dc-f7c9-4f54-8fb6-7321a4c318db.s3.amazonaws.com/buffer.html might be of interest, it looks at buffering behavior of pipelines |
| 15:49 | scriptor | hiredman_: what do you mean by multiple results? It looks like it closes `res` after only putting a single value in, https://github.com/clojure/core.async/blob/2afc2dc5102f60713135ffca6fab993fb35809f0/src/main/clojure/clojure/core/async.clj#L490 |
| 15:49 | scriptor | thanks for the link |
| 15:50 | hiredman_ | https://github.com/clojure/core.async/blob/2afc2dc5102f60713135ffca6fab993fb35809f0/src/main/clojure/clojure/core/async.clj#L493-L499 |
| 15:50 | scriptor | I see |
| 15:50 | scriptor | xf might throw a bunch of stuff in there |
| 15:51 | hiredman_ | right |
| 15:51 | hiredman_ | https://github.com/clojure/core.async/blob/2afc2dc5102f60713135ffca6fab993fb35809f0/src/main/clojure/clojure/core/async.clj#L528-L530 pulls from res until res is closed |
| 15:51 | scriptor | yep |
| 15:52 | hiredman_ | https://github.com/clojure/core.async/blob/2afc2dc5102f60713135ffca6fab993fb35809f0/src/main/clojure/clojure/core/async.clj#L561-L562 |
| 15:52 | hiredman_ | af must close res |
| 15:53 | scriptor | ah, perfect, that makes sense, I was mostly looking at the compute/blocking cases |
| 15:54 | scriptor | thanks for the explanation |
| 16:29 | mgaare | Q: What does a Vulcan Clojure developer need to develop an idea to maturity? |
| 16:30 | technomancy | core.logic? |
| 16:30 | mgaare | A: Hamok Time |
| 16:30 | technomancy | nice |
| 16:33 | justin_smith | in the real world, Amok is named after a culturally specific mental illness from Malaysia |
| 16:33 | justin_smith | "In a typical case of running amok, an individual (often male), having shown no previous sign of anger or any inclination to violence, will acquire a weapon (traditionally a sword or dagger, but presently any of a variety of weapons) and in a sudden frenzy, will attempt to kill or seriously injure anyone he encounters and himself.[" |
| 19:12 | WorldsEndless | I've heard a little bit of talking last year about running a repl in production. Has anyone tried running figwheel in production? |
| 19:17 | rhg135 | omg! |
| 19:18 | justin_smith | WorldsEndless: that feels like a really bad idea - whose browser would you be taking over? |
| 19:19 | justin_smith | sometimes I find the built in socket repl server useful, and I run it (allowing localhost only connections) in case I need to post-mortem some issue on my server |
| 19:19 | justin_smith | but a browser repl is another thing entirely |
| 19:22 | rhg135 | sounds fun in a sadistic way |
| 19:30 | TimMc | technomancy: Oooh, do you have lein stickers again? Can I collect my sticker now? :-D |
| 19:32 | technomancy | TimMc: you never got a sticker?? |
| 19:35 | justin_smith | I just bought my ticket to clojure/west |
| 19:35 | justin_smith | YAY |
| 19:35 | justin_smith | (update-in conferences [:clojure/west] conj :justin_smith) |
| 19:36 | amalloy | sorry justin_smith, only users of modern clojure will be welcomed. anyone who doesn't know about update will be turned away at the door |
| 19:36 | justin_smith | haha |
| 19:42 | TimMc | technomancy: Yeah! I think you were out when it was relevant or something, I don't recall exactly. |
| 19:45 | technomancy | amalloy: flatland's useful doesn't have any mechanism for defining custom map types does it? |
| 19:45 | justin_smith | ptomkin iirc |
| 19:45 | amalloy | you mean potemkin |
| 19:45 | technomancy | justin_smith: potemkin is exactly the thing I am trying to not use =( |
| 19:45 | justin_smith | right |
| 19:46 | amalloy | technomancy: no |
| 19:46 | technomancy | ok, just checking |
| 19:46 | amalloy | if i did it would probably just look like potemkin |
| 19:46 | technomancy | amalloy: no |
| 19:47 | justin_smith | amalloy: but that would just be a thin facade, right? |
| 19:47 | technomancy | I mean, it will not pull in three jars and contain an `import-vars' which would make you want to scream |
| 19:48 | amalloy | well like, i worked with ztellman for a year or two, and he made compelling arguments for why some of the weird potemkin shit is not such a bad idea |
| 19:48 | amalloy | i still don't use it myself but there are reasons for it to exist |
| 19:48 | technomancy | sure... it would be great if it could exist somewhere else tho |
| 19:55 | justin_smith | fork the library and remove all namespaces other than that one? |
| 21:29 | tolstoy | technomancy I know I'm late to this party, but I ditched "search" a long time ago because it never terminated. ;) However, adding something like "lein ancient" would be great. |
| 22:27 | technomancy | tolstoy: the main driver behind getting rid of search is being able to remove dependencies in order to make debian packaging smoother |
| 22:31 | tolstoy | Ah! In that case, suggestion withdrawn. ;) |