comp.lang.ada
 help / color / mirror / Atom feed
From: "Vladimir Olensky" <vladimir_olensky@yahoo.com>
Subject: Re: histrionics
Date: 1999/09/11
Date: 1999-09-11T00:00:00+00:00	[thread overview]
Message-ID: <rtk7f4ra1iv89@corp.supernews.com> (raw)
In-Reply-To: 7rcddd$bfd$1@nnrp1.deja.com


Robert Dewar wrote in message <7rcddd$bfd$1@nnrp1.deja.com>...
>In article <rtiq3si91iv24@corp.supernews.com>,
>  "Vladimir Olensky" <vladimir_olensky@yahoo.com> wrote
>
>> May be this is because writing complex programs in Prolog
>> requires very high level of abstract thinking to be able to
>> express complex problems using short logic predicates
>> sentences.
>
>Actually I disagree strongly with your criticisms of Prolog.
>On the contrary, I think it is MUCH easier to think at the
>prolog level, than to think in the low level sequential
>manner that conventional programming requires (as I mentioned
>the sad thing in Prolog, is that once you use cut, which in
>practice you do need to in real programs, you have to go back
>to much lower level thinking).
>
>> It is always more easy to describe something in many words
>> than in couple of  words:-)
>
>No, again I disagree, the power of very high level languages
>is directly related to the fact that you want to be able
>to describe things at a much higher level, and of course
>the descriptions are shorter. If I can say (this is SETL,
>without the nice character set :-)
>
>primes = {n in 2 .. 100 |
>           notexists j in 2 .. n - 1 |
>             n mod j = 0};
>
>that's a WHOLE lot easier to understand than a seive programmed
>in a conventional procedural language. Vladimir, you can supply
>the corresponding prolog program if you like :-) I prefer the
>statement in SETL, since it seems close to the mathematical
>definition of primes, both syntactically and semantically
>
>> Another thing is that it may be difficult for many people to
>> grasp= the idea of backtracking
>
>Actually the nice thing about angelic non-determinism is
>precisely that you DON'T need to think about it, the right
>thing happens. Backtracking is not a fundamental part of
>the semantics of Prolog at a high level, rather it is an
>implementation mechanism for acheiving a correct pattern
>match as required by angelic ND. Of course, once again,
>if you worry about cut, then suddenly the backtracking
>becomes non-transparent. A very similar situation happens
>in SNOBOL-4 pattern matching, which at best can be considered
>to be fully declarative, but which provides lots of cut-like
>low level junk that requires you to know the procedural
>algorithm that is used.
>
>> and recursion
>
>Surely you are not saying recursion is hard to understand. Sure
>I know that beginning students may have trouble, but surely
>anyone who considers themselves a competent professional
>programmer has got past this long ago, and is completely
>comfortable with recursion ...
>
>> Iterative algorithms implemented using conventional languages
>> may have much more lines of code but be much more easy
>> understandable.
>
>This is the kind of criticism you expect from someone who
>basically does not like Prolog :-) I would strongly disagree
>an elegant program written in Prolog is far far easier to
>understand than the extended gobbledygook that passes for
>low level procedural programming :-)
>
>So, it's interesting, Dewar and Olensky have almost
>diametrically opposed views of Prolog.
>
>Dewar likes very high level languages in general, and finds
>examples of programs written in these languages compelling,
>and for examples, that feeling applies to Prolog. Elegant
>Prolog examples, even quite complex ones are quite
>beautiful, easy to understand, concise, and clear.
>
>Where Dewar gets off the Prolog admiration bus is where people
>claim that it is an appropriate and practical language for
>writing large scale applications, including expert systems.
>
>Olensky on the other hand is rather suspicious of Prolog, thinks
>it is hard to understand because of backtracking, logic etc, but
>nevertheless thinks it is the language of choice for large
>complex expert systems.
>
>Interesting ....
>


As I matter of fact it is not my personal opinion of Prolog.
I tried to imagine what could think about that an ordinary
person with conventional programming language experience.
The formula  "if I were someone else"  sometimes very useful
when one tries to understand why something is happening this
particular way.  (Your remark that many expert systems are written
 in other languages than Prolog).

Along with technical reasons there are always psychological reasons such
as people mentality, habits, influence of the environment etc.
Very often human factor prevails over technical reasons.

As for me I never blame people that they are doing something their own way.
I always try to put myself in their place and understand their reasons.

As far as for very high level abstract logic thinking not all the people
have such ability. May be 2-5 % of all. Such people became professors in
their field.
And most of the programmers are not CS professors. This explains a lot of
things.
Moreover a lot of people are very reluctant to learn something new that are
beyond
their current experience and knowledge.

Regards.













  reply	other threads:[~1999-09-11  0:00 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-09-09  0:00 histrionics G
1999-09-08  0:00 ` histrionics Preben Randhol
1999-09-09  0:00   ` histrionics G
1999-09-09  0:00     ` histrionics Nick Roberts
1999-09-09  0:00       ` histrionics Robert Dewar
1999-09-10  0:00         ` histrionics Vladimir Olensky
1999-09-10  0:00           ` histrionics Robert Dewar
1999-09-10  0:00             ` histrionics Ted Dennison
1999-09-11  0:00               ` histrionics Bob Collins
1999-09-12  0:00                 ` histrionics Vladimir Olensky
1999-09-13  0:00                 ` histrionics Ted Dennison
1999-09-11  0:00             ` histrionics Vladimir Olensky
1999-09-11  0:00               ` histrionics Robert Dewar
1999-09-11  0:00                 ` histrionics Vladimir Olensky
1999-09-13  0:00                   ` histrionics Robert Dewar
1999-09-11  0:00               ` histrionics Robert Dewar
1999-09-11  0:00                 ` Vladimir Olensky [this message]
1999-09-14  0:00                 ` histrionics Robert I. Eachus
     [not found]                   ` <7s2l7b$kmr$1@nnrp1.deja.com>
     [not found]                     ` <37E81661.6DCA23E4@mitre.org>
1999-09-22  0:00                       ` histrionics Ehud Lamm
     [not found]                       ` <7saju5$6h6$1@nnrp1.deja.com>
1999-09-22  0:00                         ` histrionics Robert I. Eachus
1999-09-22  0:00                       ` histrionics p.obry
1999-09-23  0:00                   ` histrionics Ehud Lamm
1999-09-23  0:00                     ` histrionics Ehud Lamm
1999-09-23  0:00                     ` Sums of cubes (was Re: histrionics) Robert I. Eachus
1999-09-24  0:00                       ` Wes Groleau
1999-09-25  0:00                         ` Robert Dewar
1999-09-24  0:00                       ` Robert Dewar
1999-09-24  0:00                         ` Robert I. Eachus
1999-09-24  0:00                       ` Wes Groleau
1999-09-24  0:00                         ` Robert I. Eachus
1999-09-27  0:00                           ` Wes Groleau
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox