Christophe Grand (cgrand)
@cgrand.net
📤 316
📥 109
📝 82
❤️
#clojure
since 2008 |
#clojuredart
maintainer | Principal Consultant at t10s.com
Touched down in Charlotte for
#ClojureConj
about 1 month ago
0
1
0
I need a progress bar for something with a wildly varying estimated time to completion — but I still want to show constant progress. So here’s the 💡: a dot moving at constant speed along a space-filling curve (Hilbert?) and dynamically adjusting the curve’s resolution as the ETC changes. Thoughts?
3 months ago
0
1
0
A friend gently reminded me on my birthday: “There’s always a number base where you’re in your 20s — and the number of such bases keeps increasing.” I’m more in my 20s than ever!
3 months ago
0
4
0
I finally found a good name for the infamous macro previously known as <<- or else->>: 🥁 🥁 🥁 warp->> (pronounced warp last)
#clojure
3 months ago
0
1
0
reposted by
Christophe Grand (cgrand)
Baptiste Dupuch
6 months ago
Kudos to wevre for shipping transit-dart & transit-cljd (it passes all tests). Thanks a lot 🤘
github.com/wevre/transi...
github.com/wevre/transi...
loading . . .
GitHub - wevre/transit-cljd: Transit for ClojureDart
Transit for ClojureDart. Contribute to wevre/transit-cljd development by creating an account on GitHub.
https://github.com/wevre/transit-cljd
0
5
1
reposted by
Christophe Grand (cgrand)
Shriram Krishnamurthi
6 months ago
In The Economist:
9
60
8
reposted by
Christophe Grand (cgrand)
Maggie Appleton
6 months ago
Devastated to report I read the docs and learned everything I needed to
3
130
16
reposted by
Christophe Grand (cgrand)
Jack Rusher
6 months ago
It’s a special kind of sadness seeing the entire genre of art made with computers that I have been pursuing since the 70s ruined by AI slop. I have never been less motivated to share new work in my life. 😿
6
77
13
New article: accelerating maps processing with join-with
#clojure
#clojuredart
buttondown.com/tensegritics...
loading . . .
Accelerating maps with join-with
We designed ClojureDart maps to be more regular and deterministic than Clojure’s, making it easier to optimize batch operations. For a while, that potential...
https://buttondown.com/tensegritics-curiosities/archive/accelerating-maps-with-join-with/
6 months ago
0
6
1
reposted by
Christophe Grand (cgrand)
Shriram Krishnamurthi
6 months ago
There is no longer the satisfaction that your consumer is a human (who might write a comment, say thanks, post on HN, etc.); nor the cred that comes from people reading and remembering the author, posting on HN, etc. That is, it totally destroys the incentive structure.
2
15
3
Working on a long form ClojureDart doc
github.com/Tensegritics...
loading . . .
https://github.com/Tensegritics/ClojureDart/blob/main/doc/BOOK.md
6 months ago
0
1
0
I’m on the lookout for new dev gigs.
#clojure
7 months ago
1
6
7
Okay. A lot of « optimizations » are about tricking our brains into thinking they do something good for us. Are there groups looking into designing around our flawed brains rather than against them?
add a skeleton here at some point
7 months ago
0
0
0
Almost all chat software automatically scroll to the end of the conversation. (Even terms and repls.) But not chat AI UIs. Because you are expected to read the output. Our chat UIs makes it too easy to skip and ignore.
7 months ago
0
0
0
reposted by
Christophe Grand (cgrand)
/etc/motd 🤖
9 months ago
“I recall the instant I realized that a large part of my life was going to be spent finding mistakes in my own programs.” #MauriceWilkes, 1949
0
5
2
reposted by
Christophe Grand (cgrand)
Kristopher Micinski
9 months ago
Our new paper, “Datalog with First-Class Facts,” will appear at VLDB ‘25. We are very excited about this work, which harmonizes concepts from functional programming and databases.
add a skeleton here at some point
1
40
7
reposted by
Christophe Grand (cgrand)
Dragan Djuric
9 months ago
Not only that
#Clojure
have been supporting high performance computing on Apple M CPU since Neanderthal 0.53.0, but the even more optimized operations through Apple Accelerate is coming soon! Check it out now at
github.com/uncomplicate/neanderthal
#MachineLearning
#Python
#NVIDIA
#Swift
loading . . .
GitHub - uncomplicate/neanderthal: Fast Clojure Matrix Library
Fast Clojure Matrix Library. Contribute to uncomplicate/neanderthal development by creating an account on GitHub.
https://github.com/uncomplicate/neanderthal
1
6
1
reposted by
Christophe Grand (cgrand)
IT Services & IT Consulting
9 months ago
🖥️ Jeffy, Lead Engineer at Holiday Pirates, walks us through how he introduced Clojure at scale – starting from zero experience to powering 95% of backend development. 🧰 For CTOs and tech leads, it’s a goldmine of insight:
www.freshcodeit.com/podcast/the-...
loading . . .
0
2
1
ClojureDart stack traces are now sourcemapped and highlight the failing expression.
9 months ago
1
8
0
reposted by
Christophe Grand (cgrand)
Christian Findlay
9 months ago
Me: Hi AI. Add this button for me AI: Yes, I added the button for you. I also deleted a large chunk of your business logic. Me: Why? AI: I don't know why. Deal with it
1
2
1
reposted by
Christophe Grand (cgrand)
`fogus
9 months ago
The most distressing part of the decline of reading is that reading's core purpose is to not only present facts, perspectives, and information, but to expose us to the mechanisms of thought itself.
0
12
3
This bug was weird. All of a sudden code stops compiling. The only change? The reader now adds end source location metadata. If I add only end column or end line it’s ok. But not both. The failing form? (ns foo (:require [bar :refer [x y]])
9 months ago
2
1
1
Lego 7777 train book is still strong and makes my smallest son daydream.
9 months ago
1
1
0
reposted by
Christophe Grand (cgrand)
Ben Shapiro (he/him)
9 months ago
(Please re-skeet for visibility) Did you use HyperCard back in the day? What was your experience with it? What did you make? How did it change the way you think about yourself?
2
13
13
ClojureDart has a new join-with function which has accelerated datastructure support. What is it useful for? Some examples 👇🧵
9 months ago
1
9
0
reposted by
Christophe Grand (cgrand)
Daniel Slutsky 🎗️🏴🟣
10 months ago
One more week to propose a talk for the ⭐SciNoj Light⭐
#Clojure
conference.
scicloj.github.io/docs/communi...
If anybody is considering a talk, now is the time to talk with us, and we will help you brainstorm your draft proposal.
loading . . .
SciNoj Light: an online conference for Clojure data-analysis stories
an online conference for Clojure data-analysis stories
https://scicloj.github.io/docs/community/groups/scinoj-light/
0
5
4
Structurally accelerated merge gives a nice boost (7x) in worst case making CLJD faster than CLJ even on bad cases. See updated gist
gist.github.com/cgrand/6303e...
add a skeleton here at some point
10 months ago
0
4
1
ClojureDart merging maps 1000x faster than Clojure? 😇
gist.github.com/cgrand/6303e...
loading . . .
Fast structural merge in ClojureDart
Fast structural merge in ClojureDart. GitHub Gist: instantly share code, notes, and snippets.
https://gist.github.com/cgrand/6303edaa04951fe3c20d18fa60a7c4d9
10 months ago
0
7
3
reposted by
Christophe Grand (cgrand)
Ovi Stoica
10 months ago
There's clojurescript in react native and also clojure dart ;)
0
1
1
ClojureDart repl is coming for real!
10 months ago
0
14
2
Oddly satisfying. Almost hypnotic.
loading . . .
11 months ago
0
5
0
I had numerical stability issues in an app. Naively switched to ratios. Now the app spend 33% of its time computing GCDs 🥸
11 months ago
0
3
0
reposted by
Christophe Grand (cgrand)
HYTRADBOI
11 months ago
Talk #2: "DB usability: as if" by Jonathan Edwards (
jonathoda.bsky.social
)
1
15
2
reposted by
Christophe Grand (cgrand)
HYTRADBOI
11 months ago
The first few HYTRADBOI 2025 talks are ready! I'm so excited to be finally able to tell people about them! Talk #1: A YJIT interview with Maxime Chevalier-Boisvert
1
56
17
Wow 🤩 Rich Hickey landed a new namespace: clojure.core.async.flow
github.com/clojure/core...
loading . . .
added core.async.flow · clojure/core.async@03b97e0
https://github.com/clojure/core.async/commit/03b97e0b3e0ec329629bcbf76106658dce4a5d61
11 months ago
3
22
7
Is the space of client/consumer apps running on user-provided commoditized object storage (S3-compatible) being explored?
11 months ago
0
1
0
reposted by
Christophe Grand (cgrand)
Karl Bode
about 1 year ago
Brian Eno on AI is spot on
12
387
122
reposted by
Christophe Grand (cgrand)
gosha
about 1 year ago
#Clojure
folks, do you also know
#CommonLisp
, or other lisps? What’s your journey to Clojure been like?
17
21
3
reposted by
Christophe Grand (cgrand)
Molleindustria - Wishlist FUTURE? NO THANKS!
about 1 year ago
I used ChatGPT to generate a series of formally correct but factually inaccurate statements about an assigned reading. The students had to explain how they were wrong. This is because I think AI is better at faking expertise than constructing solid arguments.
1
57
7
reposted by
Christophe Grand (cgrand)
Molleindustria - Wishlist FUTURE? NO THANKS!
about 1 year ago
Pencil and paper are back! For the analog games readings, I had students write a short response on paper at the start of class. They were given two prompts, and surprisingly, no one complained. I was shocked by how good their calligraphy is!
1
37
3
4yo: Dad, what’s 3 and 3? Me: 6 Him, counting on his fingers: yeah, you’re right!
about 1 year ago
1
1
0
reposted by
Christophe Grand (cgrand)
Christian Findlay
about 1 year ago
You’re not going to find the perfect candidate when hiring, and it’s pointless trying. It takes at least a year to get a fresh dev up to speed The best you can do is find someone who’s eager to learn and has built software by themselves that they can demonstrate and is generally good to talk to
2
4
1
Some non obvious removal of gensyms in core macros to make cljojuredart output more stable
github.com/Tensegritics...
loading . . .
less gensyms, less diff · Tensegritics/ClojureDart@182deea
https://github.com/Tensegritics/ClojureDart/commit/182deeace95bf6275d67495749ab32d6d98d4bd2
about 1 year ago
0
3
0
Are there lisps (or any language) where macro expansion can happen in post-order? Well to be honest the only thing I would be interested at the moment is post-order providing all used symbols. So just a 2-phase macro, preorder as usual and then postorder to tune the expansion.
about 1 year ago
0
0
0
Pretending persistent data structures solve undo/redo is about the same kind of fallacy as pretending CRDT/OT/whatever solve sync.
about 1 year ago
0
0
0
reposted by
Christophe Grand (cgrand)
Alex McLean
about 1 year ago
Call for live coders! We're looking for 100+ live coders to each contribute a live 15 minute performance to the online TOPLAP solstice stream, taking place around 21st December 2024. Info here:
blog.toplap.org/2024/12/09/s...
Please share this call with live coding communities you are part of <3
loading . . .
Eulerroom
https://eulerroom.com/
2
33
22
New article: beyond swap! The transactor pattern
buttondown.com/tensegritics...
#clojure
loading . . .
Beyond `swap!`: Encapsulation sans Abstraction, the Transactor Pattern
by cgrand (🦋 🦣 𝕏) As Clojure developers we love the simplicity of putting almost all application state under a single atom. You get isolation (as long as you...
https://buttondown.com/tensegritics-curiosities/archive/beyond-swap-encapsulation-sans-abstraction-the/
about 1 year ago
1
11
4
reposted by
Christophe Grand (cgrand)
Kira Howe (McLean) 🇨🇦
about 1 year ago
My favourite thing about Clojure is that there are no "migration guides".. no need to write, read, or use them. You just update your dependencies if and when you want to, then carry on. This is how it should be.
0
17
4
reposted by
Christophe Grand (cgrand)
JUXT
about 1 year ago
🎁 Day 6️⃣ of our Content Advent Calendar 🗓️🎄 While static typing is a
#programming
staple, dynamic typing is gaining appeal for quicker iteration, flexibility, and adaptability. We weigh its merits against static typing's reliability. Listen to the full podcast here ➡️
www.juxt.pro/blog/dynamic...
loading . . .
JUXT Blog: JUXT Cast: Static vs Dynamic Typing - A Balanced Discussion on Modern Programming Practices
In this podcast episode, JUXT's leadership team and guest Jake Howard explore the benefits of dynamic typing and its role in today’s development landscape - Video.
https://www.juxt.pro/blog/dynamic-vs-static-with-jake-howard/
0
0
1
New trending warm spot of the winter: the dishwasher’s top!
about 1 year ago
0
0
0
Load more
feeds!
log in