upvote
I finally found uses for Prolog haha. For years I would have been able to write exactly your comment.

One use is a spellcheck. Though some bits are in Rust cause backtracking would be too slow.

Another is a game I'm making, the server is in Elixir, and I use erlog to basically program the NPCs in prolog. The game generates events and they are processed into facts if they are perceived by the character.

And with that I can have the system generate goals based on stuff like "I havent seen X at the market for 3 days whilst beforehand I saw X every day. Let me go check on X."

I didn't know Erlang started as a Prolog program basically, but it shows cause they fit together like a match made in heaven.

reply
I'll also make the argument that type systems in languages are purely additive rather than orthogonal.

What I mean by that is, I used to write JS. Transitioning to TypeScript didn't alter my mental model of the language.

Likewise for Python with type annotations.

The only time I've had that happen is with Scala 3's dependent types/type lambdas, but thats LITERALLY called "type-level programming", so it makes sense.

reply
I wonder if it should read "Elixir taught me that I don't need static types as much as my professor taught"?
reply