home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / lang / prolog / 2423 < prev    next >
Encoding:
Text File  |  1993-01-22  |  1.6 KB  |  38 lines

  1. Newsgroups: comp.lang.prolog
  2. Path: sparky!uunet!spool.mu.edu!agate!doc.ic.ac.uk!warwick!qmw-dcs!dc
  3. From: dc@dcs.qmw.ac.uk (Daniel Cohen)
  4. Subject: Re: Prolog is declarative
  5. Message-ID: <1993Jan22.114357.13172@dcs.qmw.ac.uk>
  6. Sender: usenet@dcs.qmw.ac.uk (Usenet News System)
  7. Nntp-Posting-Host: guinness.dcs.qmw.ac.uk
  8. Organization: Computer Science Dept, QMW, University of London
  9. References: <90458@ncratl.AtlantaGA.NCR.COM> <1993Jan22.023622.23284@latcs1.lat.oz.au>
  10. Date: Fri, 22 Jan 1993 11:43:57 GMT
  11. Lines: 25
  12.  
  13. In <1993Jan22.023622.23284@latcs1.lat.oz.au> jacob@latcs1.lat.OZ.AU (Jacob L. Cybulski) writes:
  14. >
  15. >|> What other languages are declarative?
  16. >E.g. SQL, SNOBOL
  17. >
  18. >|> What term describes languages which are not declarative?
  19. >Procedural - e.g. Cobol
  20. >Functional - e.g. Lisp
  21.  
  22. This seems a little unfair to the functional programming paradigm.
  23. I know that Lisp as used by most Lisp programmers is about as
  24. non-declarative as you can get, but pure functional programming has a
  25. declarative reading just like pure logic programming, only the language
  26. involved is that of mathematics rather than logic. Just interpret
  27. function calls as mathematical expressions with some value, and
  28. function definitions as definitions of mathematical functions.
  29.  
  30. I suspect that declarativeness in a language is closely related to the
  31. degree of referential transparency in the language; any alternative
  32. formulations?
  33.  
  34. Daniel Cohen              Department of Computer Science 
  35. Email: dc@dcs.qmw.ac.uk   Queen Mary and Westfield College
  36. Tel: +44 71 975 5245/4/9  Mile End Road, London E1 4NS, UK
  37. Fax: +44 81 980 6533      *** Glory, Glory, Hallelujah ***
  38.