This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-03-27
Channels
- # aleph (5)
- # announcements (18)
- # beginners (200)
- # cider (25)
- # cljdoc (4)
- # cljsrn (3)
- # clojure (90)
- # clojure-europe (3)
- # clojure-finland (5)
- # clojure-france (1)
- # clojure-houston (1)
- # clojure-italy (8)
- # clojure-nl (15)
- # clojure-spec (24)
- # clojure-uk (20)
- # clojurescript (199)
- # core-async (2)
- # cursive (45)
- # data-science (14)
- # datomic (33)
- # duct (13)
- # fulcro (4)
- # graphql (3)
- # kaocha (9)
- # leiningen (24)
- # nrepl (16)
- # off-topic (105)
- # pathom (15)
- # pedestal (28)
- # re-frame (1)
- # reagent (14)
- # shadow-cljs (28)
- # spacemacs (8)
- # tools-deps (8)
- # vim (4)
Greetings!
I'm happy to announce an exciting new feature of Oz: Live code reloading for Clojure.
This idea was inspired by a talk on data science in Clojure by @aria42. In the talk Aria mused about what it might be like to bridge the divide between REPL, editor and notebook with a Fighweel-like hot-code reloading experience. This idea intrigued me and so I decided to take a stab at it.
What came from this is a function oz.core/live-reload!
which takes a filename and initiates a watch routine. When the file changes, Oz reruns starting from the first changed code-form in the file (ignoring whitespace). This simple strategy allows for a tight feedback loop, even with code which periodically takes a while to fetch or process data.
This functionality (as well as a bunch of updates to Oz's core data visualization utilities) is available on [metasoarous/oz "1.6.0-alpha1"]
(expect alpha2
out shortly as well, with the latest Vega updates). Please let me know what you think, and where you might see this being useful.
https://github.com/metasoarous/oz
If you're interested in seeing a brief demonstration of this functionality, please take a look at the short screencast I put together: https://www.youtube.com/watch?v=yUTxm29fjT4
Quick update: [metasoarous/oz "1.6.0-alpha2"]
is now out, with the latest Vega libraries, as promised. Hope you enjoy. Thanks!
Simple library to utilize huge JSON database files (`.ndjson`) as read-only database with next to no memory impact: https://github.com/luposlip/ndjson-db

I wonder if I can use this as a replacement for writing and reading EDN files, since I’m having performance issues with big ones.
Ah, so it will index the start and end of each json object and only read that when you query. Clever.
Exactly. But could easily be extended to support lots of other file formats. You're welcome to submit PR's if you want, otherwise I'll probably do it myself some weekend soon 🙂
It's really good for pipelining stuff - I personally use it together with JSON Schema validations with this small wrapper library: https://github.com/luposlip/json-schema