HNHacker News
TopNewBestAskShowJobs

jasonhemann

36 karma · joined January 2, 2025

submissionscomments
jasonhemann··on Make macOS consistently bad unironically
I love that there are people who are observant enough to notice these kinds of things, a vanguard for those of us who are blithely unaware and protected due to their vigilance.
jasonhemann··on Brew cask audit finds apps unmanaged by homebrew
Sometimes you install something manually, and forget that you did so. If you would rather have your installation managed by homebrew, you might find this useful.
jasonhemann··on Emulating Goto in Scheme with Continuations
Effect handlers would like to have a word.
jasonhemann··on Financing My Klarna Doritos Locos Taco
Oh really? Not in my neighborhood.
jasonhemann··on Show HN: rm-safely – A shell alias that moves files to trash instead of deleting
There is indeed a similar, maybe even same, trash that works on MacOS and available on brew. Users are covered there too.
jasonhemann··on Solving `Passport Application` with Haskell
Just fantastic. Bravo.
jasonhemann··on Reanimation of the original Logic Theorist, the first AI, in IPL-V [video]
This video is charming
jasonhemann··on Scryer Prolog NPM package (experimental)
Awesome!
jasonhemann··on OCR4all
I was going to say, isn't tesseract /already/ OCR for everyone?
jasonhemann··on What Is miniKanren?
What I was thinking of was this one: https://en.wikipedia.org/wiki/Planner_(programming_language)... . I don't imagine there's any more formal a specification beyond what-they-implemented (but I haven't actually read the paper!)
jasonhemann··on What Is miniKanren?
Emails are definitely welcome too! Wherever you get stuck is a failure on the part of the authors.
jasonhemann··on What Is miniKanren?
IIRC, Dan told me that a million years ago, when they were choosing a name for the Kanren sourceforge repo, they had to use a name with a word that was sufficiently prominent on the internet. Kanren worked because there were enough hits for KanREN.
jasonhemann··on What Is miniKanren?
I have a vague recollection about that kind of a declarative UI framework, but I can't remember a single detail. But it's definitely an interesting idea and I know there are other folk out there also interested in your idea.
jasonhemann··on What Is miniKanren?
Interesting fact, there's a neat connection between Micro-Planner and the genesis of Prolog. So I think you could be on to something.
jasonhemann··on What Is miniKanren?
That's somewhat comforting! But on the other hand, it means also that some of the folk who would be perfectly able to understand the big idea are getting gatekept by just the look of the parentheses, even though host's concrete syntax is of little importance. Which is a darn shame.
jasonhemann··on What Is miniKanren?
I think these are great points. Everything should be smooth as butter for an interested reader, and the tutorial should be so approachable and such a page-turner that the curious are hooked on page one and can't put it down.

Really---anything short of that is sub-optimal performance. I think some of it comes from new eyes reading and pointing out room for improvement. The other half is someone having the time to figure out the fix and implement it.

jasonhemann··on What Is miniKanren?
One of the hopes is that you can drop in your favorite host language's syntax and get a working implementation. What's your usual language stack these days?
jasonhemann··on What Is miniKanren?
No, but I would so love to hear someone from the team give a talk about it. That's so darn awesome
jasonhemann··on What Is miniKanren?
One of the things miniKanren has going for it is that tons of folk have built little embedded implementations in the whatever your favorite host language is. For instance, here's https://web.archive.org/web/20211205175513id_/https://erik-j... a walkthrough of how you'd implement the basics in Python. Comes with an explanation.
jasonhemann··on What Is miniKanren?
I was going to mention how cool JJs work is. Upvote to all those links.
jasonhemann··on What Is miniKanren?
What's your preferred PL? I suspect we could do a similar build-it-up in that lang too.
jasonhemann··on What Is miniKanren?
That's actually related to how the name came about, IIRC!
jasonhemann··on What Is miniKanren?
For folks that want to engage / learn more, there's been an annual miniKanren workshop and also a monthly miniKanren hangout online. Interested folk should totally come to either both!
jasonhemann··on What Is miniKanren?
I think there'll be all manner of constraint and constraint-logic programming approaches that'd be amenable. I wish I had a great answer for you as "the best".

IMO, these "zebra puzzle"/"einstein puzzle" style problems are like a "hello world" for many related techniques. What's more, there are many languages that combine several of these techniques together so that you can easily pick and choose where appropriate.

If you were just wanting to compare against another related style, answer-set programming is one thing that comes to mind.

jasonhemann··on What Is miniKanren?
You totally absolutely are smart enough to understand this. Possibly overly so! Happy to jump on a call and answer questions, if useful!