Scheme with Mini-Kanren is like C or Objective-C (take your favourite, or love-to-hate, derived language): you can program in a relational style, but you can drop back to functional programming as needed. Which is bad if you're a purist, or, even as a pragmatist, bad for maintenance in the long run, but great for making deadlines.
After using it for about a week or so I'm sort of nostalgic for Prolog. Not that I like Prolog better, but using both at the same time makes me appreciate Prolog more than I used to when forced to use it. And with XGP one can use Prolog from the comfort of a Mac-based IDE!
Ah, the joy of declarative programming. Of being able to say "give me all ways of making a rectangle of area A and perimeter P from square 1x1 blocks". Of having your predicates generate members of the set as well as test for membership.
After using it for about a week or so I'm sort of nostalgic for Prolog. Not that I like Prolog better, but using both at the same time makes me appreciate Prolog more than I used to when forced to use it. And with XGP one can use Prolog from the comfort of a Mac-based IDE!
Ah, the joy of declarative programming. Of being able to say "give me all ways of making a rectangle of area A and perimeter P from square 1x1 blocks". Of having your predicates generate members of the set as well as test for membership.
- Mood:
content
