I got Ring running on Jolt 🎉 https://github.com/jolt-lang/examples/tree/main/ring-app
I share your enthusiasm but try to keep posts in #C06MAR553 to once a month for projects. There's #C015AL9QYH1 for more frequent updates.
ah fair, I'll avoid spamming here 🙂
But this is very cool 🙂
thanks! it's honestly going better than I anticipated
once I got the initial runtime bootstrapped, porting stuff over wasn't that hard, and each library shakes out bugs in the compiler so porting next one gets even easier
That seems to be the pattern with a lot of these dialects... which I guess says something interesting about Clojure itself...
indeed 🙂
the big realization for me was that most popular Clojure libraries don't actually use a huge amount of Java API surface when they do interop, it's typically IO, date time, etc., so if you provide shims for that, a lot of stuff starts working seamlessly
between Jolt and Jank we'll have C ecosystem well covered here
May try getting HoneySQL running on Jolt? Don't know what you'd use for the database layer directly tho'... next.jdbc is very closely tied to JDBC...
oh I actually made this a little while back and haven't had much use for until now https://github.com/yogthos/clojure.jdbc
it's relatively tiny and I think I should be able to make shims for postgres/sqlite easily enough
then on to HoneySQL
HoneySQL already runs on clj, cljs, and bb 🙂
I'm also curious how far I can push the whole Clojure in Clojure compiler idea, I'm intentionally trying to keep Clojure layer decoupled from Janet as much as possible, so it could end up being a good base for other ports
yeah HoneySQL might just work out of the box then
Create issues if it doesn't and you don't feel you can accommodate those things.
thanks will do if anything comes up
so this worked out great, turns out jolt's defprotocol didn't accept Clojure's optional docstring and leading keyword options, and honeysql declares (defprotocol InlineValue :extend-via-metadata true …), and once I fixed that HoneySQL just worked like magic
woah, i missed the announcement about jolt, this is cool as hell
i like janet a lot but was sad about some of the design decisions
Yeah, I found that for me it just didn't feel productive in the same way Clojure does, but it does make a really strong foundation for a Clojure runtime. And the other big part is opening up access to the whole Clojure ecosystem of mature and battle tested libraries.
I just made this color-palette manager here: https://github.com/TheFakeLorLyons/clj-colors, https://clojars.org/com.github.thefakelorlyons/clj-colors It has a slight and only very early stage LLM twang to it because I am considering the use of string tags belonging to each individual color-swatch, which I am considering how, in conjunction with the other facilities of this lib, could be used as an LLM tool to assist in visual tasks, among many other things. This project spawned as a result of a need I have for quickly generating and swapping out my own custom gradients and color palettes; with a desire to categorize/compartmentalize them and organize them for long term re-use, and I am interested in seeing how I might be able to use this tool both on my own and in teaming with LLMs on some generative art projects I am undertaking.
Interesting - any reason HSL was chosen as a base colour space? I would assume Oklab / Oklch would be the default choice nowadays where gradients are involved (unless you're specifically going for the 'retro' vibe)
This is the first I have actually heard of these color spaces, but I just looked them up and it is cool/intriguing work for sure; I will look adding functionality for those today and over the weekend. Thank you for your feedback :) Moreover, it is actually less about gradients themselves, as much as it is about color sets that are are meant to be queryable via qualitative English descriptions via the tags associated with each swatch. I took a picture of the actual gradients studio thing because it is somewhat cool / nice looking, but it is meant as a supplement to the API as another way to add / remove /update existing color palettes for the collection rather than the main feature of the application, and in general when working with the color sets, much of the time they may not be a gradient proper; I thought a gradient was just a good way to show off which colors are in the set.
You may be interested in HSLuv too, slightly less alien if you're already used to thinking in HSL :) Less trendy than Ok-* spaces which have taken off due to native CSS support
(also haven't looked too closely but probably could have used rewrite-clj off the shelf instead of hand-rolling an entire EDN parser, oof - I suppose that's part of the 'LLM twang' mentioned)
Really appreciate your feedback! I am going to be trying to simplify the code with these helpful libraries soon in addition to the above changes!
A new clojure ssh library: clojuressh. It's an ssh library for clojure that is API compatible with bbssh. You can use it in your deps.edn both in clojure and babashka. So no need for reader conditinals. First release is 0.7.0 (as its API identical to bbssh 0.7.0). https://github.com/epiccastle/clojuressh Blog post about the release here: https://epiccastle.io/blog/announcing-clojuressh/
🤯 babashka