[net.lang.prolog] Purity

Abbott@AEROSPACE@sri-unix.UUCP (10/20/83)

From:  Abbott at AEROSPACE (Russ Abbott)

In considering the question of Prolog's purity vs. its convenience
for programmers, I wonder how '=..' fits in.  As a pure first order
logic system, Prolog disallows variables as predicate names--even
though that would sometimes be very convenient.  Yet one can write

        Term =.. [Predicate | Arguments],
        Term,

in violation of all first order principles.  What are the
justifications for these rules ?