Those inseparably mix up programming language, compiler, programmer(s) and application domain as factors.
HN user
sriku
Interests - Music, Mathematics, Physics, Scheme
email - srikumarks @t gmail d.t com blog - http://sriku.org
Work area (former) - Automatic video editing tools (algorithms, fx, rendering)
Ph.D. - Understanding Indian classical music through computer synthesis.
Banner - helping create, communicate, learn and understand Indian classical music through technology.
(formerly aufreak3)
I wish people'd report metrics like "40 type classes, 5000 functions, 300 instances, 20 monads, 14 functors, ..." And such instead of "lines of haskell".
This test would be a good way to lose existing subscribers perhaps.
https://claude.com/product/claude-code seems to say it is included in Pro plan.
"Fast" is not always a virtue and "efficiency" is not always the only consideration.
While this can give a notation for the domain, you'd still need an engine to process it. Prolong+CLPFD perhaps meets it well (not too familiar with the tax domain) and one could perhaps paraphrase Greenspun's tenth rule to this combo too.
Another concatenative-ish one embedded in js .. just for fun - https://github.com/srikumarks/pjs
You may find the "genailang" module fun to play with.
This - I even ran Claude to produce a security eval of openclaw for fun and it was mostly spot on - https://sriku.org/files/openclaw-secreport-claude-13feb2026....
We built something like this by hand without much difficulty for a product concept. We'd initially used LangGraph but we ditched it and built our own out of revenge for LangGraph wasting our time with what could've simply been an ordinary python function.
Never again committing to any "framework", especially when something like Claude Code can write one for you from scratch exactly for what you want.
We have code on demand. Shallow libraries and frameworks are dead.
The "impossibility" of enforcing legislated constraints on thousands of providers point is hand waving. We're all legislated to not harm each other. Throwing the small fraction who do in jail, is sufficient to keep the vast majority away from harming others, and there is also moral alignment.
If 10% of hosts (maybe even less) are penalized, the rest will likely start complying. much like self managed compliance of thousands of companies. A protocol is only as good as the entities that participate in the community using it.
"what specific laws ...?"
If a company chooses a design and it can be proved through a subpoena of their communications that the design was intended and chosen for its addictive traits, even if there has been no evidence collected for the addictiveness, then the company (or person) can be deemed to have created a design in bad faith to society and penalized for it.
(Well that's my attempt. I tried to apply "innocent until proven guilty" here.)
Great point and many of the responses are very interesting too.
I wonder whether part of this is a habitualization of intolerance for just being with oneself - to be ok with feeling bored, for instance. Most suggestions are about "doing". Just being with oneself without a doing is painful for many from what I've seen.
This looks to me like partly a false dichotomy. We can design languages and write libraries. Some would even argue that some kinds of "libraries" could be viewed as languages themselves, as much as some languages might as well have been written as libraries in another language.
Also often, the language doesn't live isolated from its implementation (compiler or interpreter). While theory looks at languages via its semantics, in practice as the OP notes it is about the quality of the implementation and what can be reasonably done with the language.
A recent [1] case is Julia. I think it has hit a kind of sweet spot for language design where new performant code tends to get written in Julia rather than in some other language and bound to it. At its core, it is a simple "call functions, passing data in and getting results out" kind of language, but what the functions ("methods") mean and how the compiler does just-ahead-of-time compilation with deep type specialized code means you can write high level code that optimizes very well. Those mechanics operate under the hood though, which makes for a pleasant programming experience ... and there are loads of cutting edge packages being written in Julia. It is less interesting to look at Julia as "just the language".
[1] recent in programming languages is perhaps anything <= 15 years? .. because it takes time to discover a language's potential.
i^i isn't unique right? The "let x = π/2" could very well have been "let x = π(4k+1)/2" for any integer k.
The frame set by the OP completely out me off and dissuaded me from reading the rest of the article beyond the first paragraph. Didn't feel like much throught was given to what was being said.
I find it hard to think of code as being the output of programming. I keep re-reading Naur's "Programming as theory building" paper and it still feels relevant and closer to how the activity feels to me, AI or no AI.
A quote shared by a close friend and mentor -
Apparently an elderly Irish musician said this as he was tuni g his instrument - "I've learnt that the secret to being happy is to not get personally involved in your own life."
Am working on rewriting an imperative programming course to use Dafny to present verified algorithms and data structures.
I quite like Dafny, despite my first run up with it (verification aspect) being frustrating. The language is well designed for this. Also, it looks like it is a great candidate as a code generation target for LLMs because you can generate the proof of correctness and run a feedback loop with Dafny's checker.
Try writing a^b in integers and proving its correctness. The simple version works (based on a x a^(b-1)). But if you write an "optimised one" using (with handwaved details) (a^(b/2))^2 .... pulled some serious hair trying to prove this function works.
In a discussion I was in recently, a participant mentioned "culture eats strategy for breakfast" .. which perhaps makes sense in this context. Be bold enough to do what makes the team and the product thrive.
Wouldn't "The Age of Em" be relevant to this paper? Was surprised to not find a reference to it in the preprint.
Impressive performance, yes but is the article giving more credit than due?
Rgd the "14 lb 5 oz" point in the article, the simpler explanation than the hypothesis there that it back calculated the weight is that there seems to be a space between 14 and 5 - i.e. It reads more like "14 5" than "145"?
The article says it was created to write audio software but I'm unable to find any first sources for that. Pointers?
I've had a soft spot for Forth and am toying with a silly Forth-like interpreter for web programming ... if not for actual use, at least for some fun time. One concept it adds is the notion of a "current selection" which can define the available vocabulary to use and is used to select and work with DOM elements. Just experimenting.
https://github.com/srikumarks/pjs
Edit: As a kid, I disliked BASIC as a language though it let me do fun stuff. So I made an interpreter in BASIC for a language I'd like and it turned out Forth-like (and I didn't know about Forth at that time). I guess I'm still that kid some 35 years later.
Some of thr language features like operators can be overloaded using method tables, much like python's double underscore methods. I do think that the inability to do this in JS is what held it back from becoming a data processing powerhouse. But it perhaps can be made to run fast precisely because of the lack of such overrides (otherwise we'll be running python at JS speeds). That said, LuaJIT seems like a good compromise and might be best of both worlds.
Whether or not anything "breakthrough" comes out of his work, I'm very sympathetic to the kinds of explorations he does ... especially since new things go through a messy phase before clarity arises.
"I consider TypeScript to be the gold standard when it comes to type systems on top of dynamic languages."
Doubly weird, considering that TypeScript work was inspired by typed/racket, and TypeScript doesn't have a sound type system afaik and the OP's first love was Scheme.
In that form yes, but the active "drink water" which is kind of what we'd code like "drink(water)" is "wasser trinken". ... but yeah human languages aren't straightjacketed easily.
"story of your life" isn't quite about sapir-whorf but more about the lagrangian view of the world (as opposed to the Hamiltonian). That is difficult to convey in a movie and so the sapir-whorf part got emphasized there.
Also Exhalation is a beautiful story that captures the fact that all life and intelligence lives in the space between low entropy and high entropy. So it's not different thermodynamics.
But overall I align with the sense of admiration the OP has for Ted Chiang. He explores "what if" scenarios with such mastery I feel like I had a dip in a fresh water pool after a read.
Another of my favs (including the title itself) is "Anxiety is the dizziness of freedom".