The Birth of Prolog (1996)
dl.acm.org
dl.acm.org
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.
After learning of Scheme, if you truly want to dive into the deep end of programming, the 'next step' is the book The Structure and Interpretation of Computer Programs aka SICP. By no means is it the required next step after learning of Scheme - of course - but if you're looking for the programming book to have when you're shipwrecked on a desert island, that's the one.
SICP: https://mitp-content-server.mit.edu/books/content/sectbyfn/b...
It's a 'subset' of ACM SIGPLAN (Special Interest Group on Programming Languages) and is absolutely fascinating, if, you know, you're into that sort of thing.
The conference proceedings are usually locked up in academic libraries. Sometimes it's fun to hold a physical copy in one's hands... If that's one's cup of tea, one's local city's public library may have a borrowing arrangement with local / regional / state college libraries. For example, at any public city library in California, one can request and then typically borrow* a book from any California State University / University of California library.
* With restrictions, I'm sure...
Prolog was huge in expert systems[0]. It (and they) fell victim to the Second AI Winter[1].
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.