| I forget who said it, but a good programming language should have two features: 1. Make simple problems easy. 2. Make difficult problems possible. Python is an outstanding language on both scores. Prolog, alas, is much better at #2 than it is at #1. For example, prolog is a great choice for writing domain-specific languages, and modern implementations (like scryer prolog, mentioned in a comment above), can generate very efficient code for them. Prolog's "killer ap" is how well it does on a third feature: 3. It makes virtually impossible tasks "merely" very difficult ;-) And it has a steep learning curve; it took me years to really "get" it, and I only persevered because I was facing one of those category #3 problems. Its not a deprecated language, but alas, it is destined to be a niche language. But for those niches, it is still the best, hands-down. |