FWIW, I too am interested in a better SQL tool for Clojure, but my take on it is that we don't need a new language on top of SQL, but a better way to use SQL directly.
My thinking, plus an *alpha-grade* library, can be found here: https://github.com/krisajenkins/yesql#rationale Cheers, Kris On Tuesday, 29 October 2013 16:35:45 UTC, ArturoH wrote: > > I am interested in writing a better SQL mapping tool for clojure. Because > I am not convinced that simple SQL composition is effective, for various > reasons. I rather have some kind of logic construct that I could use to > generate SQL from. My main concern is to eliminate the hard boundary > between the RDBMS and the rest of the code. Any given logic construct would > a candidate to be translated into SQL or executed inside the JVM. > > One option that I have been considering is a production rule system. The > most popular are based on the rete algorithm. I know there are a few open > source productions systems out there, but I think translating into SQL from > an established rule language may be too complicated. At this point I plan > to use the language extensions proposed by Anurag Acharya, that eliminate > sequential guards and adds collection support. The reason is that I want to > process the rules in parallel, and I want to be as close to SQL as > possible. Clojure pure functions could also be called from within a > production rule. > > The use case I have in mind is regular IT apps, not necessarily complex > decision systems. I just find myself writing too much code, and often an > SQL a clojure procedure and a function in the GUI will have some aspect of > the same business rule embedded in the code. A layered approach helps to > alleviate the problem, but it still persists. More support for declarative > code may be the answer. But other than SQL or LINQ and other minor > examples, there is little support for declarative code for average IT > systems. > > Anyone has any ideas/opinions? > > I would appreciate any feedback. > > Arturo Hernandez > -- -- 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 unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.