4 ms·
A Hitchhiker's Guide to Reinventing a Prolog Machine (2018)
- carapace 5y agoPaul Tarau has some other very interesting (IMO) work. For example, in re: representation of large numbers with efficient arithmetic algorithms. He also extends it to encoding lambda terms and other fun stuff. IIRC the new implementation of Prolog falls out of his work encoding Prolog terms. https://www.cse.unt.edu/~tarau/ https://www.cse.unt.edu/~tarau/
- moonchild 5y ago(2017)
- radomir_cernoch 5y agoWow. The article is easy to read despite dealing with a complicated topic. And the idea looks quite innovative - definitely something that attracts researchers. Still, after 4 years, this article has 1 citation, which is a self-citation [1]. Is this a definitive proof that Prolog is dead? [1] https://scholar.google.com/scholar?cites=4818730189048705347&as_sdt=2005&sciodt=0,5&hl=cs https://scholar.google.com/scholar?cites=4818730189048705347...
- exdsq 5y agoI’ve seen some jobs (rarely) that use Prolog but not many. I’d love to know if anyone on HN uses a similar language in prod?
- rscho 5y agohttps://youtu.be/G_eYTctGZw8 https://youtu.be/G_eYTctGZw8
- YeGoblynQueenne 5y ago>> Is this a definitive proof that Prolog is dead? It's evidence that interest in the article is dead, but why should that extend to Prolog?
- radomir_cernoch 5y agoThat's exactly the question. I've seen a lot of Prolog-inspired research (modified semantics, hence really just “inspiration”), one YouTube video about “Prolog in production” and a lot of hobby projects. As a Prolog teacher at our university, my question was a bit provocative, hoping that someone proves me wrong.
- rscho 5y agoWell, isn't it the point of prolog to have easily modifiable semantics? I'd argue it is, whether through meta-interpretation or an alternate implementation.
- YeGoblynQueenne 5y agoSo you're hoping that Prolog is not dead and you were hoping that someone would provide evidence that it isn't, but you thought you'd get more mileage out of a provocative formulation of your request than simply stating your request? I don't know if that works that well... Here's my view. Prolog is not "dead" as long as there's a community around its various implementations that uses them - for whatever reason. Of course you'll see more work in academia rather than industry, but that's industry. There's a few languages that dominate industry and a great many that, well, don't. At least for Prolog there is academic interest, so it's not just hobby projects. Research in Logic Programming (and Inductive Logic Programming, which I study) is still active with conferences and journals, so academic interest is not dead. Regarding community, I only have an impression of one Prolog community, the one around Swi-Prolog, because that's the one I use. The community seems healthy, with active participants that are not just the maintainers, although you do tend to see the same people posting often. It's a small community, but "small" does not mean "dead". Regarding commercial use (what everyone seems to wonder about) Jan Wielemaker, the maintainer (and originator) of the project recently started a company, Swi-Prolog Solutions b.v. to support the development of Swi in a commercial rather than academic environment. He explains it here: https://swi-prolog.discourse.group/t/swi-prolog-solutions-b-v/3328 https://swi-prolog.discourse.group/t/swi-prolog-solutions-b-... This is a recent development but commercial entities have supported the development of Swi-prolog before. For example, see library(aggregate) that, according to its documentation, was sponsored by a commercial company: The development of this library was sponsored by SecuritEase, http://www.securitease.com http://www.securitease.com https://www.swi-prolog.org/pldoc/man?section=aggregate https://www.swi-prolog.org/pldoc/man?section=aggregate Presumably, Securitease uses Swi-Prolog in its operations. Apparently, the same goes for Kyndi, a company that offers NLP services: Kyndi’s secret sauce is a decades-old programming language called Prolog that was designed with probabilistic and logical computational reasoning in mind. Using very little training data — in some cases as few as 10 to 30 documents of 10 to 50 pages each — Kyndi can automate fact, inference, and concept generation in virtually any vertical. It’s speedy to boot (the company claims it can read upwards of a thousand documents in seven hours) and helps to mitigate bias that might otherwise arise from conventional deep learning approaches. https://venturebeat.com/2019/07/10/kyndi-raises-20-million-for-explainable-ai-that-derives-insights-from-documents/ https://venturebeat.com/2019/07/10/kyndi-raises-20-million-f... [Note: the article doesn't mention which Prolog Kyndi uses. I got the information that it's Swi-Prolog from this comment on the Swi-Prolog Discourse channel: https://swi-prolog.discourse.group/t/what-happens-if-dr-wielemaker-is-hit-by-a-van/3734/20 https://swi-prolog.discourse.group/t/what-happens-if-dr-wiel...] These examples also suggest that commercial uses exist. They may be few and far between but again, for a small language that's what can be expected. So, to paraphrase Granny Weatherwax, I think we can say that Prolog "ATEN'T DEAD". Not yet.
- openfuture 5y agoScryer prolog is just getting started. My prediction: logic programming will replace filesystems in the age of non-volatile memory.
- YeGoblynQueenne 5y agoScryer Prolog looks very nice, with tabling from the start of the implementation (e.g. Swi-Prolog only added tabling in the last year or two I think). Let's hope it develops to the standard its authors want it to.
- rottc0dd 5y agoAbout WAM implementation mentioned in paper: http://wambook.sourceforge.net/ http://wambook.sourceforge.net/ Edit: added some info about link
- Avshalom 5y agoSeems more like evidence that either: This approach turns out to be a dead end when fully elaborated The research community isn't particularly interested in implementations that don't extend the semantics/language Notably Tarau himself doesn't seem to have gone anywhere with it either despite still being quite active.
- carapace 5y agoTarau's work seems interesting and valuable to me, and much of it uses languages other than Prolog, yet he's pretty obscure, so I don't think it's Prolog necessarily, eh? I'm mystified. FWIW, I think Prolog isn't dead. It's just slow and stately. :)
- mingodad 5y agoAnd here is a repository from someone that translated it to Javascript (also has C++ version) https://github.com/CapelliC/hitchhicker-prolog https://github.com/CapelliC/hitchhicker-prolog