3 ms·
> I wish I had time to learn it. I always wonder why it doesn't get more attention. pre-answered your own question really. Prolog 'died' in the AI winter, so n
by Avshalom 7y ago
> I wish I had time to learn it. I always wonder why it doesn't get more attention.
pre-answered your own question really. Prolog 'died' in the AI winter, so no one knows it and no one knows anyone who knows it. Every time you think "huh I bet this is like 100 lines in Prolog" it doesn't matter because writing 2000 lines of Java (or whatever you know) is still going to be faster than learning Prolog.
This is also the problem with literally any comment about "using the right tool for the job" with regards to programming languages.
- triska 7y agoComplementing this, neural nets shared the same fate in an AI winter, in fact in the AI winter preceding the one you mention, and yet they now attract significant attention. In large part because the hardware is better, and also because the approaches are now better. We may see analogous developments with Prolog when our current hardware gets better or changes its characteristics, and when Prolog implementations get better and use better approaches that are now becoming available. I think one difficulty we are facing when judging developments in this area is that complex software projects such as implementing a Prolog system happen on time scales we are not yet used to.
- Avshalom 7y agoPersonally I think Prolog is great* and I'm learning it for funsies but neural nets are a specific approach that people have been writing in Python, because they already know Python. Prolog is a whole thing. Kind of an apples and oranges problem. * I mean seriously it's fantastically expressive: parsing, constraint logic, expert systems, database interaction-- all look and feel completely native, it's beautiful.
- triska 7y agoAbsolutely, I fully agree! In fact, I think precisely due to this elementary difference, it is reasonable to expect it to take longer for Prolog implementations to reach the practical applicability we are now seeing in neural networks after a few decades of research and improvements.
- deckard1 7y agoI think the reason no one uses Prolog is simply because generalized backtracking problems (i.e. the problems you would use Prolog for) are too computationally expensive and infrequent enough that: a) You would never train staff or hire experts on Prolog for such few problems and... b) You could probably do much better with a heuristic algorithm anyway. Especially on hardware of the day when Prolog came out, but even today I imagine this holds true. Prolog may be useful for quick exploration of a problem space. But for code that needs to run frequently, there just isn't a great need for what Prolog has to offer.
- tom_mellior 7y agoI just posted https://news.ycombinator.com/item?id=22830791 https://news.ycombinator.com/item?id=22830791 in a cousin thread addressing this criticism. Prolog is about more than search, unification is a very very powerful tool for matching and transforming data.
- deleted 7y ago[deleted]