Rendered at 22:21:19 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
upghost 27 minutes ago [-]
I'm not sure why but Prolog seems to have more misinformation circulated about it than any other programming language I've ever seen. I'd take a lot of the information in these comments with a grain of salt. If anyone is interested in authoritative and accurate modern information about the language, please see Power of Prolog[1][2].
I discovered Prolog in my youth, and logic has been something of an addiction ever since - not always, I suspect, a particularly useful one.
Lately, though, I have found what may be an antidote in Emacs, Lisp, and functional programming.
Then again, perhaps I have merely traded one elegant addiction for another.
anyfoo 23 hours ago [-]
Try Haskell.
shevy-java 14 hours ago [-]
The problem is: Haskell is a really, really difficult language. Prolog was much simpler.
Python on the other hand is a pretty simple language. We have different trade-offs here.
froh 16 hours ago [-]
Prolog (and common lisp) were all the rage for NLP in the 1990s, HPSG systems, le dernier cri, were implemented in them.
what confused me back then and still does is the strict determinism, the fact that program code order defines the output, not the fastest to prove valid binding.
I hoped for sth that would instead be driven by sth like A* guided by probabilities, learned from corpora...
in the early 2000s I then saw research doing exactly that, a* guided search guiding the unification algorithm. I wonder what has become of these approaches. (didn't find the specific paper any more, which to me was one of these sacred moments of reading something hard and useful being well explained, if I find it I'll update. I _believe_ it was from Stanford)
harperlee 13 hours ago [-]
There is some research around minikanren that touches exactly that (minikanren is akin to prolog written in scheme, where order is just an implementation detail, and cuts and other non-relational things are looked with suspicion).
jrapdx3 20 hours ago [-]
Programming in Prolog back in the 1980s was a pleasant experience. I wrote some useful programs with Prolog but as I remember that era, the language made a brief splash and soon relegated to niche settings.
Nowadays I enjoy programming in Scheme, which I'd guess is chosen by developers about as often as Prolog. Using Scheme stirs up memories of my Prolog experience. Intuitively it seems like these PLs require or stimulate a similar thinking process that appeals to some of us. I haven't pursued this idea, but it lingers in my brain.
Curiously both PLs were developed in the early 1970s and first official versions released in 1975. Is it possible the authors of Scheme knew about and were influenced by Prolog? Not too likely, but Prolog's creators did spend some time at MIT, the birthplace of Scheme, so the odds are a bit better than 0.
WalterGR 11 hours ago [-]
> … 1980s… as I remember that era, the language made a brief splash and soon relegated to niche settings.
Prolog was huge in expert systems[0]. It (and they) fell victim to the Second AI Winter[1].
Just heard the Scheme Programming language. Great to know that.
OymInIRole 23 hours ago [-]
Interesting that Prolog grew out of an NLP project in Marseille rather than a logic-programming research agenda — SLD resolution got attached to it afterward, not the other way round.
classichasclass 1 days ago [-]
I actually asked Dr Colmerauer once if the original program code had survived, but sadly he did not believe any of it was still around.
pjmlp 15 hours ago [-]
One of my favourite languages, I even took part in a logic programming competition between universities.
ratio53 15 hours ago [-]
Same. When I see Prolog mentioned I’m surprised but also happy. More people should know about it. It’s such a fun language to program in because it forces you to think in relationships and facts.
timonoko 12 hours ago [-]
Prolog was weirdly simple to make, once you managed to grasp the concept in its wholeness. Yes I made one in 1982 in Osborne-1. I even managed to include all numbers in the machine into search space, meaning 0 to 0xFFFF -- which real Prologs do not do.
shevy-java 14 hours ago [-]
Prolog is strange. On the one hand it makes sense. On the other hand it seems to just be not a very practical language. People don't seem to stay with Prolog whereas they stay, say, in python.
Antibabelic 13 hours ago [-]
Prolog is a very practical language for particular tasks. Languages are tools that fill different niches.
Besides, people do stay with Prolog. The language has been going strong for many decades. New Prolog projects pop up often. This can't be said for many other unusual languages, which perished in academic obscurity.
[1]: https://www.metalevel.at/prolog
[2]:https://www.youtube.com/@ThePowerOfProlog
Lately, though, I have found what may be an antidote in Emacs, Lisp, and functional programming.
Then again, perhaps I have merely traded one elegant addiction for another.
Python on the other hand is a pretty simple language. We have different trade-offs here.
what confused me back then and still does is the strict determinism, the fact that program code order defines the output, not the fastest to prove valid binding.
I hoped for sth that would instead be driven by sth like A* guided by probabilities, learned from corpora...
in the early 2000s I then saw research doing exactly that, a* guided search guiding the unification algorithm. I wonder what has become of these approaches. (didn't find the specific paper any more, which to me was one of these sacred moments of reading something hard and useful being well explained, if I find it I'll update. I _believe_ it was from Stanford)
Nowadays I enjoy programming in Scheme, which I'd guess is chosen by developers about as often as Prolog. Using Scheme stirs up memories of my Prolog experience. Intuitively it seems like these PLs require or stimulate a similar thinking process that appeals to some of us. I haven't pursued this idea, but it lingers in my brain.
Curiously both PLs were developed in the early 1970s and first official versions released in 1975. Is it possible the authors of Scheme knew about and were influenced by Prolog? Not too likely, but Prolog's creators did spend some time at MIT, the birthplace of Scheme, so the odds are a bit better than 0.
Prolog was huge in expert systems[0]. It (and they) fell victim to the Second AI Winter[1].
[0] https://en.wikipedia.org/wiki/Expert_system
[1] https://en.wikipedia.org/wiki/AI_winter
Besides, people do stay with Prolog. The language has been going strong for many decades. New Prolog projects pop up often. This can't be said for many other unusual languages, which perished in academic obscurity.