Reasoned schemer for microkanren?

132 views
Skip to first unread message

Amirouche Boubekki

unread,
Dec 16, 2016, 5:57:18 PM12/16/16
to minikanren
Hi!

Is there a version of the reasoned schemer for microkanren available?


Thanks in advance!

Dan Friedman

unread,
Dec 16, 2016, 5:59:57 PM12/16/16
to minik...@googlegroups.com
We are working on it now, and it has a full chapter explaining everyone of the lines.

... Dan

--
You received this message because you are subscribed to the Google Groups "minikanren" group.
To unsubscribe from this group and stop receiving emails from it, send an email to minikanren+unsubscribe@googlegroups.com.
To post to this group, send email to minik...@googlegroups.com.
Visit this group at https://groups.google.com/group/minikanren.
For more options, visit https://groups.google.com/d/optout.

Nehal Patel

unread,
Dec 16, 2016, 8:09:30 PM12/16/16
to minik...@googlegroups.com
A line by line account will be quite nice!  

I've had the pleasure of hearing several of your former students give tutorials on (non-relational) scheme interpreters.  Without fail, they each recall with pure glee being shown how a mere apostrophe can separate a Lisp-2 from a Lisp-1... 

It feels there is a similar to be had opportunity in your exposition of microkanren:  

THIS line gives you "interleaving search"  -- a mere transposition of arguments separates it from a bottomless abyss (of depth first...)

Preaching the gospels of interleaving search is one part of the 'kanren pedagogy (which is really one of best developed pedagogies in all of CS) that perhaps could be further emphasized.  In my own experience with porting microkanren -- trying to hunt down where the "magic lived" ended up being the most transformative part of the exercise.     Perhaps a catchy phrase might help: "The unreasonable effectiveness of interleaving search for relational fixed points" (or some such nonsense)

cheers, 
nehal 

Dan Friedman

unread,
Dec 16, 2016, 9:27:41 PM12/16/16
to minik...@googlegroups.com
Thanks,

... Dan

Jason Hemann

unread,
Feb 17, 2018, 3:45:01 PM2/17/18
to minik...@googlegroups.com
To update this thread, this long-awaited updated version is available for pre-order on Amazon, or other fine bookstores near you. 

JBH

On Fri, Dec 16, 2016 at 7:52 PM, Nehal Patel <nehal...@gmail.com> wrote:



--
JBH

Amirouche Boubekki

unread,
May 23, 2018, 2:57:53 PM5/23/18
to minikanren


On Saturday, February 17, 2018 at 9:45:01 PM UTC+1, Jason Hemann wrote:
To update this thread, this long-awaited updated version is available for pre-order on Amazon, or other fine bookstores near you. 

I bought the digital edition, it's very readable.

I am super excited to adapt this new version of minikanren to my new rdf-like database!

Amirouche Boubekki

unread,
May 23, 2018, 3:01:44 PM5/23/18
to minikanren


On Saturday, December 17, 2016 at 2:09:30 AM UTC+1, Nehal Patel wrote:
A line by line account will be quite nice!  

I've had the pleasure of hearing several of your former students give tutorials on (non-relational) scheme interpreters.  Without fail, they each recall with pure glee being shown how a mere apostrophe can separate a Lisp-2 from a Lisp-1... 

It feels there is a similar to be had opportunity in your exposition of microkanren:  

THIS line gives you "interleaving search"  -- a mere transposition of arguments separates it from a bottomless abyss (of depth first...)

Preaching the gospels of interleaving search is one part of the 'kanren pedagogy (which is really one of best developed pedagogies in all of CS) that perhaps could be further emphasized. 

Isn't "interleaving search" another expression for "beam search" see https://en.wikipedia.org/wiki/Beam_search

Greg Rosenblatt

unread,
May 23, 2018, 3:36:15 PM5/23/18
to minikanren
It's different.  Beam search isn't complete because it throws away candidates to focus on just a few, to try and save time and memory.  I think the analogy is that it focuses like a beam.

From the wikipedia page:
"... But in beam search, only a predetermined number of best partial solutions are kept as candidates.[1] It is thus a greedy algorithm."

gerard....@gmail.com

unread,
Jun 1, 2018, 12:21:15 PM6/1/18
to minikanren

Does it exist downloadable source code for the miniKanren Scheme language extension used in the new book «Reasoned Scheme - Second Edition» ?

gerard....@gmail.com

unread,
Jun 1, 2018, 12:21:15 PM6/1/18
to minikanren
Apparently the miniKanren definition used in the book "The Reasoned Schemer - Second Edition" has changed with respect to for exemple the faster-minikanren of DrRacket. One example  : the book uses the expression (run* q #u) where there is no parenthesis around q and #u is not defined.

Is a package for this new minikanren definition available and for what version of Scheme ?

Le vendredi 16 décembre 2016 23:57:18 UTC+1, Amirouche Boubekki a écrit :

gerard....@gmail.com

unread,
Jun 1, 2018, 4:35:28 PM6/1/18
to minikanren
Very good !

Le vendredi 16 décembre 2016 23:59:57 UTC+1, Dan Friedman a écrit :
We are working on it now, and it has a full chapter explaining everyone of the lines.

... Dan
On Fri, Dec 16, 2016 at 5:57 PM, Amirouche Boubekki <amirouche...@gmail.com> wrote:
Hi!

Is there a version of the reasoned schemer for microkanren available?


Thanks in advance!

--
You received this message because you are subscribed to the Google Groups "minikanren" group.
To unsubscribe from this group and stop receiving emails from it, send an email to minikanren+...@googlegroups.com.

gerard....@gmail.com

unread,
Jun 14, 2018, 5:45:22 PM6/14/18
to minikanren
Does it exist downloadable source code for the miniKanren Scheme language extension used in the new book «Reasoned Scheme - Second Edition» ?

Le vendredi 16 décembre 2016 23:57:18 UTC+1, Amirouche Boubekki a écrit :

William Byrd

unread,
Jun 14, 2018, 5:48:52 PM6/14/18
to minikanren
Hi Gerard!

We just posted code for The Reasoned Schemer, Second Edition:

https://github.com/TheReasonedSchemer2ndEd/CodeFromTheReasonedSchemer2ndEd

Hopes this helps!

Cheers,

--Will

Dan Friedman

unread,
Jun 14, 2018, 9:54:22 PM6/14/18
to minik...@googlegroups.com

Dan Friedman

unread,
Jun 14, 2018, 9:55:21 PM6/14/18
to minik...@googlegroups.com
Here it is:

https://github.com/TheReasonedSchemer2ndEd/CodeFromTheReasonedSchemer2ndEd

... Dan
On Fri, Dec 16, 2016 at 8:09 PM Nehal Patel <nehal...@gmail.com> wrote:
>
> A line by line account will be quite nice!
>
> I've had the pleasure of hearing several of your former students give tutorials on (non-relational) scheme interpreters. Without fail, they each recall with pure glee being shown how a mere apostrophe can separate a Lisp-2 from a Lisp-1...
>
> It feels there is a similar to be had opportunity in your exposition of microkanren:
>
>> THIS line gives you "interleaving search" -- a mere transposition of arguments separates it from a bottomless abyss (of depth first...)
>
>
> Preaching the gospels of interleaving search is one part of the 'kanren pedagogy (which is really one of best developed pedagogies in all of CS) that perhaps could be further emphasized. In my own experience with porting microkanren -- trying to hunt down where the "magic lived" ended up being the most transformative part of the exercise. Perhaps a catchy phrase might help: "The unreasonable effectiveness of interleaving search for relational fixed points" (or some such nonsense)
>
> cheers,
> nehal
>
>
> On Fri, Dec 16, 2016 at 5:59 PM, Dan Friedman <dfri...@gmail.com> wrote:
>>
>> We are working on it now, and it has a full chapter explaining everyone of the lines.
>>
>> ... Dan
>>
>> On Fri, Dec 16, 2016 at 5:57 PM, Amirouche Boubekki <amirouche...@gmail.com> wrote:
>>>
>>> Hi!
>>>
>>> Is there a version of the reasoned schemer for microkanren available?
>>>
>>>
>>> Thanks in advance!
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups "minikanren" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an email to minikanren+...@googlegroups.com.
>>> To post to this group, send email to minik...@googlegroups.com.
>>> Visit this group at https://groups.google.com/group/minikanren.
>>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups "minikanren" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to minikanren+...@googlegroups.com.
>> To post to this group, send email to minik...@googlegroups.com.
>> Visit this group at https://groups.google.com/group/minikanren.
>> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups "minikanren" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to minikanren+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages