This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-09-08
Channels
- # announcements (32)
- # aws (2)
- # babashka (21)
- # beginners (143)
- # cider (3)
- # cljsrn (13)
- # clojure (65)
- # clojure-dev (7)
- # clojure-europe (20)
- # clojure-losangeles (8)
- # clojure-nl (13)
- # clojure-norway (39)
- # clojure-uk (9)
- # clojurescript (39)
- # code-reviews (10)
- # conjure (2)
- # cursive (3)
- # datascript (6)
- # datomic (40)
- # events (5)
- # exercism (23)
- # fulcro (9)
- # funcool (2)
- # girouette (2)
- # graphql (4)
- # helix (8)
- # improve-getting-started (4)
- # integrant (7)
- # introduce-yourself (5)
- # jobs (3)
- # luminus (32)
- # malli (3)
- # off-topic (10)
- # pathom (9)
- # pedestal (4)
- # polylith (25)
- # practicalli (1)
- # re-frame (4)
- # sci (3)
- # shadow-cljs (5)
- # tools-deps (25)
- # vim (31)
- # xtdb (32)
Datalevin 0.5.3 is out. This is a major release that introduces transparent client/server mode of using Datalevin databases. The server supports full fledged role-based access control (RBAC). A brief documentation for the Datalevin client/server is at https://github.com/juji-io/datalevin/blob/master/doc/server.md
New library, js-literal
, provides a cljs reader literal #j/s
which is like the #js
literal, but is recursive.
https://github.com/henryw374/js-literal
largely built to satisfy some curiosity... maybe something like this exists already but didn't find it.
Example `
#j/s [:a {:b [:c]}]
; compiles to => Array.of("a",Object.fromEntries(Array.of(Array.of("b",Array.of("c")))));
; under advanced compilation, compiles to ["a",Object.fromEntries([["b",["c"]]])]
; if you can improve on the above, IOW object literal syntax, please PR
yeah I should address that in the readme... clj->js should be equivalent, but will be less efficient, going via cljs datastructures
@U051B9FU1 interesting. I had an issue in SCI around #js: I accidentally made it behave recursively and I didn't realize that, even though it's a reader function, also I learned that CLJS will still evaluate to new objects all the time, e.g. in (apply identical? (for [i [1 2 3]] #js {:a 1}))
, this will yield false
interesting @U5H74UNSF, that macro will produce more efficient js, ie with object literals. Possibly they could have a reader function with the same content I believe and so have a tagged literal like #j/s
that produces optimal js code... hmm
Crux has been renamed to XTDB, and there are https://github.com/xtdb/xtdb/releases/tag/1.19.0-beta1 available for testing with the fully-renamed APIs, to check everything has gone smoothly (no functionality changes this time). New Twitter account & blog post here: https://twitter.com/xtdb_com/status/1435593730921218058 The Slack channel has migrated to #xtdb already.
another 4 letter project name with an X, the tradition was respected I see :)
The #exercism Clojure track has launched brand-new "Concept exercises" in a beta stage: https://exercism.org/tracks/clojure/concepts This is the result of a 2 year (mostly volunteer) effort to provide a better learning path on Exercism. What once was a largely haphazard collection of challenges is being revamped into a proper syllabus that navigates the student through the graph of core Clojure concepts, with a new in-browser editor with automated testing. This is very exciting and a bit terrifying for me, because it's the first thing I've written that is used in this scale of production. I'm sure there are lots of bugs, hugely embarrassing ones even, so I welcome your reports and any other feedback that could help improve the tooling and/or educational content.
That's not actually a 0
, it's a Mobius Strip that has been unraveled, representing the endless cycle of knowledge
Great endeavor! Thanks for doing this. I think it will be a great resource to guide beginners to. But one thing I would suggest is to add a project.clj file (or maybe deps.edn I guess but I would stay consistent with the rest of the non concept track Clojure problems) so folks can work on it locally with repl driven development, including running the tests.
Ahh, in looking at the github it looks like you have added a deps.edn file to all the concept exercises except the first one (lucian's luscious lasagna)
Look like the 0 thing is fixed, but what about these missing icons?
Hmm... after signing up didn't see this any more
instead just collapsed all of those containers
Also... not able to start any of the excercises. They seem to be locked?
Oh; I see. It's because I didn't complete "Hello world". But that's a little odd, because from the sylabus it looks like I should start by clicking "Basics", but then can't complete any excercises.
Shouldn't hello world either be first in the syllabus, or part of basics?
Next, after completing the hello world exercise, I see this:
Huh; After clicking around a bit, that box was replaced with one that let me mark it as complete.
Anyway, going through lasagna now; This is pretty sweet! Great work!
If I were to make any suggestions, other than smoothing out the friction above, I'd suggest an option for parinfer, and more robust autocomplete that incorporates local variable names.
Regardless, this is a wonderful resource; Thanks for working on this!
Oh... now, it shows little locks for the other entries on the syllabus: