3 ms·
There appears to be a lot of activity around minikanren [1]. Personally I'm so used to having a powerful metalanguage around (lambda calculus plus or minus a bi
by discarded1023 3y ago
There appears to be a lot of activity around minikanren [1]. Personally I'm so used to having a powerful metalanguage around (lambda calculus plus or minus a bit) that I can't imagine programming in pure Prolog any more. Which is to say this is probably the way to go in practice, if a subproblem can be solved using logic programming.
[1] http://minikanren.org/ http://minikanren.org/
- zelphirkalt 3y agoMinikanren allows you to program in relations. That is, not only unidirectional functions, X->Y, but you can leave out the X and give the Y, getting all X, which would result in that Y. I always found that talk at RacketCon impressive [1]. I mean, of course, minikanren is also implemented somehow, using lambda, but usually one would not want to rebuild the things minikanren offers. I have not yet tried to use minikanren inside an otherwise "normal" program, but I suspect it will just work. [1]: https://invidious.baczek.me/watch?v=5vtC7WEN76w https://invidious.baczek.me/watch?v=5vtC7WEN76w (video id 5vtC7WEN76w)