I just realized: The tool "#make" is awesome when it's declarative and concurrent, and it sucks when it's #shell-like.

What else is declarative?

#Prolog!

Does anyone know a Prolog inerpreter in which concurrent calling is easy? I have something in mind...

Follow

@dcz late to the thread, but I am a recent follower of Prolog. swi-prolog.org seems to have threaded execution, not sure whether it is implicitly parallel under the hood. But why not gorge on bountiful free/open software? Write Prolog that generates a Makefile and run it with 'make -j $CORES' ? Or run many Prolog instances (pengines?) designed in a control hierarchy?

@tetrislife Introducing a layer of indirection makes reasoning about the system harder.
Make also has heavy flaws like that it only works on files as inputs.

My goal here is to leverage an existing, sane syntax and execution model, rather that squeeze in Prolog.

@dcz ah, so, Erlang/Elixir? Or are there more declarative options? A far-out option is Parasail (Ada with implicit parallelism but not declarative). A more Prolog-y option seems to be Mercury which has implicit parallelism. A mundane option might be GNU parallel?

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.