4 ms·
Logic Programming slides from #HNLondon
- wodow 14y agoThis was a very good talk - a whistle-stop tour of Prolog. It would have been interesting to hear more about your thoughts on embedded logic systems for other, general languages (having looked at some of the python libs myself recently) - though I realise there likely wasn't time for this.
- Peteris 14y agoThanks, yeah that was a bit of shame; I actually discovered logic programming through Clojure's core.logic. Definitely logic and probabilistic programming are some of the most useful DSL's that can be built. The power is there, it's perhaps the case that Prolog compilers have a much longer history of optimizations, so it might take a while to catch up even though core.logic has some convincing benchmarks too. Another area is functional logic programming. I've played around with Curry, and it's great and it feels even better than just having a logic DSL. The way you can represent strongly typed bi-directional declarative regular expression parsers is simply magic. It's an exciting decade for logic :).
- agumonkey 14y agoNice slides, thanks a lot. An often mentioned reference is The reasoned schemer, or TAoP. Do you have any other recommendations to get a grasp of logic programming ? BTW, it reminds me of this talk : A Taste of Prolog by Aja Hammerly @ Cascadia Ruby 2012 http://www.youtube.com/watch?v=hEOVcLAPRG8 Oh, and David Nolen introduced a bit of core.logic here : http://www.infoq.com/presentations/ClojureScript-Optimizations ps: I don't want to distract people on other talks, just want to aggregate introductions in a single place.
- wodow 14y agoI added a wiki entry for the Python libs for logic programming: http://wiki.python.org/moin/LogicProgramming http://wiki.python.org/moin/LogicProgramming
- prezjordan 14y agoThis is all very interesting, but can anyone recommend some "puzzles" or "challenges" I can solve to better learn Prolog? Having a tough time finding things to program.
- rck 14y agoYou might try the 99 Prolog problems: https://sites.google.com/site/prologsite/prolog-problems https://sites.google.com/site/prologsite/prolog-problems The Scala version was fun and useful.
- deleted 14y ago[deleted]
- gatlin 14y agoI'm curious about what HN thinks of answer set programming - the de facto language is a Prolog variant but in most implementations solutions are found by reducing programs to SAT instances. Upshot is you can reason about belief in an open world.
- mcginleyr1 14y agoI worked for a company www.quintiq.com that implemented a declarative programming language. They have a propagator that does much of what prolog does. However the syntax is more imperative. Very interesting.
- ses 14y agoI've spent a lot of time researching Logic Programming and I'm always amazed how little known some of the languages/tools/techniques derived from it are. For some software problems Prolog, Constraint Logic Programming, SAT solvers are the natural choice for easy representation and solution and yet usually people end up rolling their own DSLs when there are so many out there. SWI-Prolog has some very useful web features, there are even libraries to expose Prolog through web services. Java has tuProlog, another really clever piece of software which is actively being developed. I look at some of the claimed benefits of functional languages and so many apply to Logic Programming, its just a shame that it's often ignored because it is so different.