🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.prolog
Article #3214

Re: Prolog as a "real" language

#3214
From: Richard A. O'Keefe
Date: Thu, 07 Apr 1988 00:47
35 lines
2606 bytes
In article <1315@hubcap.UUCP>, steve@hubcap.UUCP ("Steve" Stevenson) writes:
> If you insist that arrays are not legitimate, then how will you
> address mathematics?  I have had several numerical types who say
> they really like the idea of prolog, but no arrays makes it impossible
> to consider "numerical logic programming."  Let's pull together, folks.

(1) Mathematics and numerical programming are not co-extensive.
(2) If by "arrays" one means the rectangular structures found in Fortran
    and Pascal, bear in mind that large-scale numerical programming is
    to a large extent a matter of fighting around the limitations of
    such arrays (band matrices, triangular matrices, sparse matrix
    packages, generalised upper bounding, ...)
(3) "Arrays" covers two things: constant-time *access* to large
    collections of data, and constant-time *update* of such collections.
    There's no reason why something like Trilogy couldn't be extended
    with the computational parts of APL.
(4) The same absence of constant-time update is to be found in functional
    languages such as ML.  Does this mean that it is 'impossible to
    consider "numerical functional programming"'?
(5) It turns out that assignment to individual array elements is one of
    the principal reasons for there being so little potential parallelism
    in Fortran programs.  There was a study which claimed to show that if
    you were prepared to build new arrays instead of copying old ones you
    could get 700-fold parallelism rather than 7-fold.  (This is not an
    argument _for_ logic programming, just an argument _against_ blind
    faith in current practice.)

Something I would like to do, if only I could find the time, is to write
a linear programming routine in Prolog.  I've done it before in a
conventional language.  The key to efficiency was the use of a particular
sparse matrix representation.  I believe that a couple of lists of lists
of pairs will be an adequate Prolog encoding of the data structure.
Would it not be more profitable for the "numerical types" to provide
specific examples which they think cannot be done efficiently in Prolog
or ML, rather than to refuse to consider it?
Technical Details
Message-ID: <855@cresswell.quintus.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!seismo!sundc!pitstop!sun!quintus!ok
References: <1926@ubc-cs.UUCP> <1315@hubcap.UUCP>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!seismo!sundc!pitstop!sun!quintus!ok
From: ok@quintus.UUCP (Richard A. O'Keefe)
Newsgroups: comp.lang.prolog
Subject: Re: Prolog as a "real" language
Message-ID: <855@cresswell.quintus.UUCP>
Date: 7 Apr 88 00:47:04 GMT
References: <1926@ubc-cs.UUCP> <1315@hubcap.UUCP>
Organization: Quintus Computer Systems, Mountain View, CA
Lines: 35