I’d argue that the BEAM needs a prolog-y language too — erlang is prolog-like in syntax only (lacking unification, backtracking, cuts, and other really fundamental constructions). This really screwed me up when I was first working with it — I expected functions to be reversible, expand unbound variables to the herbrand universe, etc.

(I don’t think erlang should become more prolog-like. I just think a more prolog-like language would benefit from the kind of message-passing & implicit multithreading that BEAM makes straightforward.)

Written by

Resident hypertext crank. Author of Big and Small Computing: Trajectories for the Future of Software. http://www.lord-enki.net

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store