Very cool! I'm working on a very similar thing, but aimed at reference types and with the ability for incremental transformations.
Specifying this kind of thing declaratively opens up the door to a lot of possibilities. On Thu, Jun 14, 2012 at 7:44 PM, Robert Levy <r.p.l...@gmail.com> wrote: > This announcement is more of a call for suggestions (even pull requests if > you are moved to do so) as there's not much to it yet, just enough to to > demonstrate the concept for simpler transformations. I'm thinking of how > best to go about supporting a wider range of sequence transformations. > > https://github.com/rplevy/lambic > https://clojars.org/lambic > > The basic idea is that languages like Prolog are very good at manipulating > sequences "by example" based on pattern matching, and that using core.match > this can become the norm for Clojure too (either using this library or some > other I don't yet know about.) > > In Clojure, when you encounter data that matches pattern X and you want to > systematically turn into data of the form Y, depending on how complex the > structures are, you tend to start with some solution, change it around, and > ultimately end up with a very elegant solution that is clearly the "best > way". > > My present take on how to implement lambic is essentially to catalog these > "best ways" for a number of different classes of sequence transformations, > so that lambic knows what to do with them. What do you think of this idea? > Is there a way to use logical magic (magical logic?) to do something > better? ;) > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with your > first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en