
The Power of Prolog
2 HN recommenders · recommended in 3 months, 2022–2024
56:03 · 33K views · Apr 3, 2022
Markus Triska tours Prolog's most distinctive features, including its use as a database and query language, rule processing, constraint solving and compile-time rewriting. It also covers concise meta-interpreters.
HN recommends it as the best short introduction to what makes Prolog unique.
3 comments from Hacker News
The Power of Prolog [0] is a fantastic blog/video series covering everything from basic syntax, theoretical basis, modern features and idiomatic constructs. I highly recommend it if you want to get the gist of Prolog and its modern features. If you want a tour of Prolog, you can watch the video with the same name [1]. [0]: [LINK] [1]: this video
I think that Prolog will rise again. If you have an hour to kill, check out this video introduction by Markus Triska about what makes Prolog unique: this video Recently I have been working on getting Trealla Prolog to run in WebAssembly. Support is quite good now, with an easy-to-use JS library[1], Go library[2], and is now one of the best-supported languages for the Spin runtime[3]. I think it's particularly nice for validations, you can write some simple Prolog rules and run the same code on the client and the server now. I would like to explore this more with a dedicated library at some point. Built-in features like DCGs make parsing/generating all kinds of data trivial. I love it. I think the biggest barrier to Prolog adoption is that it has a really steep learning curve, and most people get burnt by half-assed introductions in college that tick the 'talked about logic programming' box in the syllabus. You really have to think in a completely different way to write a good Prolog program. But, once you get the right mindset, it makes solving complex problems incredibly easy. I don't really buy the argument that Datalog is enough. Most Datalog implementations I've seen hack on a bunch of extensions to do things like list membership. It would be awesome to see some serious effort put into an efficient Prolog-based database. The closest thing I can think of is TerminusDB, which I've never used but I wish I could convince my company to try it out ;). My dream is to have some kind
I was watching some of the videos and in the intro Markus mentioned some of the most popular Prolog systems this video SICStus, GNU Prolog, XSB, Ciao, Scryer, Traella, Tau but does not mention at all of SWI-Prolog. I remember using SWI-Prolog back in the day, did it somehow fall out favor, or is there some animosity between implementation and Markus is just not in the SWI-Prolog camp?