announcements

Project/library announcements ONLY - use threaded replies for discussions. Do not cross post here from other channels. Consider #events or #news-and-articles for other announcements.
mauricio.szabo 2020-12-20T02:03:33.241300Z

Just published Chlorine version 0.10.2 - socket REPL package for Atom. On this release, only bugfixes 🙂. Only one new feature is that Chlorine is now caching clj-kondo's results for 20s, so if you have no REPL connected you can issue lots of "doc-for-var" and "goto-var-definition" and they'll resolve really fast 😄. (to be honest, I'm only caching because I'm preparing a release that will also rely on clj-kondo for autocomplete, when there's no REPL connection ready 😄)

👍 6
tony.kay 2020-12-20T02:24:00.243700Z

Fulcro’s websocket remote has been updated to support client use from CLJ. Most of Fulcro can run in a headless mode in CLJ without React. This makes it possible for you to make a CLJ Fulcro app that can communicate with a Fulcro server. You could use this, for example, to leverage the EQL/transaction processing of Fulcro in any Clojure JVM application. https://github.com/fulcrologic/fulcro-websockets

🎉 13
pez 2020-12-20T10:13:50.247200Z

Can ClojureScript apps also be using the non-react parts of Fulcro?

tony.kay 2020-12-20T16:49:24.250Z

Of course

tony.kay 2020-12-21T18:47:51.269800Z

@pez see for example: https://www.youtube.com/watch?v=ng-wxe0PBEg&ab_channel=TonyKay

👍 1
Yehonathan Sharvit 2020-12-20T07:46:09.244900Z

Book excerpt: Applying Git and Optimistic Concurrency Control principles to Data Oriented Programming https://blog.klipse.tech/databook/2020/12/18/occ-do-git.html

3
st3fan 2020-12-20T14:26:03.248400Z

I wrote another GitHub App/Bot in Clojure .. it may be useful for the coming week(s) … https://github.com/marketplace/devbots-vacation

👌 2
st3fan 2020-12-20T14:27:19.248900Z

Documentation at https://devbots.xyz/documentation/vacation/

2020-12-20T19:44:49.251100Z

Introducing Liz: A new general purpose programming language - written as Clojure look-a-like EDN - compiled down to small native binaries for x86, ARM, RISC-V, WASM and other architectures - seamless interop with C libraries - compiler written in Clojure using tools.analyzer, leveraging Zig compiler https://github.com/dundalek/liz

👍 16
1
👀 8
😮 4
eggsyntax 2020-12-20T19:55:56.251400Z

Interesting!

2020-12-20T20:06:16.252200Z

Yep, interesting.

borkdude 2020-12-20T22:50:13.254500Z

Small Clojure Interpreter 0.2.0: https://github.com/borkdude/sci/blob/master/CHANGELOG.md#v020 Follow up in #sci

15
1
👋 1
borkdude 2020-12-20T23:00:43.254900Z

@kloud Looks interesting. So it's a clj -> zig transpiler basically? Why ^:pub and not just use defn- for private funs, while defaulting to public? I haven't looked at zig, but your project makes me want to take a look at it.

2020-12-20T23:27:00.255400Z

@borkdude It is basically a transpiler, although clj -> zig would be an over statement, it is more like a zig dialect with some clojureisms. One of the use cases is to have a language that could be used to write native extensions for using in Clojure via JNI, so I try to keep it low level and don't include abstractions with overhead.

2020-12-20T23:27:30.255600Z

Great idea with defn- , I will add that.

borkdude 2020-12-20T23:28:01.255800Z

This is interesting. I could also see myself using this to write babashka pods perhaps.

2020-12-20T23:30:13.256Z

Zig is pretty neat, definitely worth checking out. I wanted to see if there is something better than C for writing native code.

2020-12-20T23:30:51.256200Z

It seems to tick all the boxes, good design choices and focus on simplicity.

borkdude 2020-12-20T23:33:22.256500Z

@kloud how does it work with the type-system bridging? clj is dynamically typed, but zig is statically typed

borkdude 2020-12-20T23:34:54.256700Z

Ah, I see, the type hints are translated to type info in the target

2020-12-20T23:38:52.257Z

Exactly, it feels like a bit of an abuse, but seems to work for now. One limitation is with more complex types, it would be good to create a DSL for it, for now it leaks a bit and one can use a string with a Zig expression for the type.