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.
HN user
jasonhemann
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.
Effect handlers would like to have a word.
Oh really? Not in my neighborhood.
There is indeed a similar, maybe even same, trash that works on MacOS and available on brew. Users are covered there too.
Just fantastic. Bravo.
This video is charming
Awesome!
I was going to say, isn't tesseract /already/ OCR for everyone?
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!)
Emails are definitely welcome too! Wherever you get stuck is a failure on the part of the authors.
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.
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.
Interesting fact, there's a neat connection between Micro-Planner and the genesis of Prolog. So I think you could be on to something.
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.
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.
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?
No, but I would so love to hear someone from the team give a talk about it. That's so darn awesome
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.
I was going to mention how cool JJs work is. Upvote to all those links.
What's your preferred PL? I suspect we could do a similar build-it-up in that lang too.
That's actually related to how the name came about, IIRC!
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!
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.
You totally absolutely are smart enough to understand this. Possibly overly so! Happy to jump on a call and answer questions, if useful!