John McCarthy was the first to recommend using logic in programs with his advice taker proposal. This inspired the logic programming paradigm:
Paul Graham (creator of the hacker news site) has an entire chapter in his book On Lisp on embedding prolog:
Peter Norvig's Paradigms of Artificial Intelligence programming includes an implementation of prolog in Lisp:
Common Lisp relations: an extension of Lisp for logic programming proposed a mechanism for logic programming back in 1988:
Franz. Inc is developing Allegro Prolog as an extension to Common Lisp:
The Clojure programming language includes relational programming functionality through the core/logic module:
Racklog is an embedding of Prolog-style programming in Racket.
The Shen programming languages includes a fully functional embedded prolog system:
CycL is a declarative ontology language based upon classical first-order language which includes support for ontology components including parts and relations:
What is it that we don't get again?
I wonder if there would be any benefit to that?
Of course, this a ROR crowd, software invented by a business school grad/game review writer, so it's can be an uphill battle explaining this stuff.
* argumentum ad verecundiam
* ad hominem
Clojure tends to emphasise simple components that do specific tasks; so core.logic focuses on logic programming and not, for instance, persistence or atomicity. Because it's so focused, it's more capable in its particular area of expertise than a more general tool like SQL.
So basically the traditional niche of lisp, complex apps, has been replaced by sql.
There are apps written in lisp, like this site for example, but that's just for vanity mainly (pg is famous for his lisp books) - it would be have been easier to write it in sql.
Almost every website or software running a business I can think of runs sql. The very small few that don't, google for example, run on c++ and assembly.
So, in 2012, with gigs of ram and postgres, why would I use lisp?
Why not just do relational programming - prolog or sql. The lisp weenies still don't get it.
And now you've peppered the entire thread with non sequiturs and off-the-wall droppings. Please take a break.
I'm simply trying to tell the kids on here that SQL is great and ROR/LISP/NoSQL worship around these parts is misguided. No 'droppings' in that.
Yes, I write Lisp on my resume to make me look like a stronger candidate. I learnt it a few years ago for fun, that's all (I'm not a lisp flip-flopper). Just want to put the advice out there to be a relational weenie (instead of lisp weenie).
If you have something to say about the actual post, then please say it. Otherwise, get out.
Lisp is useful to me (more useful than ruby or C was), predominantly because I can work with emacs/swank/slime and change and query my program while I'm observing its output.
But you made your claim too big.
SQL (even with recursive CTE) is still just a DSL for relational data. Even more: DSL for relational data only.