Fork me on GitHub
#announcements
<
2019-11-07
>
Olical12:11:32

Conjure v2.1.0 is out with support for evaluating a form at any given Neovim mark! https://asciinema.org/a/279763 This means you can evaluate things from other parts of your buffer while you work elsewhere, or even in different files and namespaces! https://github.com/Olical/conjure - intro guide https://oli.me.uk/getting-started-with-clojure-neovim-and-conjure-in-minutes/

henrik13:11:46

I’m looking forward to the forthcoming idiot->wizard video. 🙂

Olical13:11:40

Haha, a great name for a training series.

Olical13:11:05

Or maybe wizard school? I'm guessing Hogwarts has some copyright restrictions 😬

henrik14:11:40

Maybe acolyte->wizard would be better, as “idiot” literally means “person that doesn’t vote” in ancient Greek, and we don’t want to upset any ancient greeks.

Olical14:11:32

Yeah, I wouldn't want to upset anyone or call anyone an idiot. A video series getting people proficient with conjure might be good though. Or more posts on my https://oli.me.uk site

henrik14:11:49

Personally, I’d be very interested in the nothing-to-REPL-up-and-running scenario, as I’m entirely new to vim, neo or otherwise. Motivationally, I would find it much easier to learn vim around the REPL than to learn vim in order to get to the REPL, if you know what I mean.

Olical16:11:47

Ah that's very interesting. Maybe a video series / live session for newbies would be good. Like an online follow along session for getting started from nothing with a bunch of plugins and stuff 🤔

dominicm14:11:00

Announcing the initial public release of Clip (0.10.0). Clip is a dependency injection library akin to Integrant or Component that requires no modification to existing Clojure code. It works for both Clojure & ClojureScript, Sync & Async, Code & Data. Contributions of all kinds are welcome, at this stage design feedback is still very welcome. https://github.com/juxt/clip Discussions in #juxt

dominicm14:11:00

Announcing the initial public release of Clip (0.10.0). Clip is a dependency injection library akin to Integrant or Component that requires no modification to existing Clojure code. It works for both Clojure & ClojureScript, Sync & Async, Code & Data. Contributions of all kinds are welcome, at this stage design feedback is still very welcome. https://github.com/juxt/clip Discussions in #juxt

vemv14:11:52

Can one create multiple systems with it?

dominicm14:11:32

Yeah. Systems are reified, so you can def as many as you like and then start them. The concept of a system isn't a singleton.

timgilbert14:11:20

I'd be curious to see a comparison between this and integrant / mount / component...

pithyless14:11:27

@U09LZR36F README mentions https://github.com/juxt/clip-example -> which is 404

dominicm15:11:42

https://github.com/dharrigan/nextjdbc-clip is a for example for now. I need to port the rename to the example :)

dominicm15:11:31

@U08QZ7Y5S there's a handful of references to integrant/component in the rationale, or did you have something else in mind?

timgilbert15:11:56

Ah, I see them now, but I missed them on a quick scan. I guess I was looking for a more direct "comparison to other libraries" section. No big deal though

dominicm15:11:12

That's probably a doc worth writing. I'll open an issue and tag you, if you don't get there first.

vemv15:11:53

A comparison table could be killer Some points aside from the obvious: - suspendability - whether the system is reified (already addressed)

dominicm15:11:55

Suspension is not yet done. But is coming. I think there's an issue for this.

jeroenvandijk15:11:50

@UEM4BH7B3 Since you write that requires no modification to existing Clojure code is the main reason for its existence refactoring legacy applications?

dominicm15:11:35

@U0FT7SRLP not really. Although I think it would be a great fit there. I was frustrated at constantly adapting functions into multi methods and records. If you build granular systems, it's quite frustrating, you end up with 3-line multi methods which defer to a function doing the work. I wanted to capture the ability to write idiomatic clojure code, the kind I would put in a library without hesitation, and not have to make it aware of a particular state library. One of the other benefits I was looking for was docstrings, which vars naturally support. Something I want to explore further is for personal development setups, rather than having a pre-defined dev system. Somehow tying that into minimalistic repl driven development. But that's a major WIP for me.

jeroenvandijk16:11:31

@UEM4BH7B3 Thanks for explaining, make sense! The introduction of async is also interesting. I'm curious how this can be applied

dominicm16:11:31

The async? We use async in a project to setup re-graph. But that project has a custom system, so I made a new custom system library.

jeroenvandijk16:11:15

Maybe I'm thinking too much from a component perspective. I'll read the documentation better

dominicm16:11:11

The idea is that when you return something async, dependent components won't have their start called until the async thing is resolved.

dominicm16:11:19

So the async is transparent.

p-himik17:11:11

Are there any plans to eventually start using it in Edge?

dominicm18:11:56

Yeah. It's on my list. Going into the JUXT website next week, so it'll probably be done in parallel

dominicm21:11:02

I've fixed the link to the clip example

dominicm11:11:58

To clarify, it'll be unofficially supported in edge, but probably won't be documented until I've used it a few times and I'm happy.

dominicm12:11:08

Documented a comparison with other libraries https://github.com/juxt/clip#comparison-with-other-libraries feedback welcome on other tabs worth having

rapskalian18:11:03

@U09LZR36F thanks for sharing! Just curious, what is the inspiration for the name “clip”?

dominicm18:11:58

@U6GFE9HS7 In the sense of "to fasten together"