Re: i am a prolog beginner pls help me in getting this



Bart Demoen wrote:

student wrote:

Observations:

1. requires certain language skills


Is "[successful] operation of Prolog Inference Engine" the same as "programming in Prolog".


See

http://www.geocities.com/logic4sure/TLM/tlm-skills.html

I have seen it - I was neither wiser nor better informed afterwards.

I would appreciate an answer, sort of in the mode "teacher to student", not
a pointer to something that doesn't help me answering my question myself.

Cheers

Bart Demoen

[9:30 AM] Again, sorry for the rush job. I was dead on my feet. Now that I have had some sleep, please allow me to recap:

<quote>
> Observations:
>
> 1. Successful operation of Prolog Inference Engine (PIE) requires certain language skills

Is "operation of Prolog Inference Engine" the same as "programming in Prolog".
If not, can you explain ?

> 3. Successful operation of the PIE is something that can be
> determined with complete objectivity

???
Maybe I do not understand (or believe) this because I don't know what
this operation of the PIE is, but even so, can you elaborate on the
determination method (even before we go into how objective it is).
Do you have a model for determining the (successful) operation of the PIE ?
If "operation of Prolog Inference Engine" is the same as "programming in Prolog"
then many Prolog (and other language) instructors would like to know if you
have such an objective determination method.
</quote>

I would not disagree with anyone who said

> 1. Successful Prolog programming requires certain language skills

and

> 3. Successful Prolog programming is something that can be
> determined with complete objectivity -- that is, quite aside from its >applications, Prolog programming per se is a completely objective test of the language skills that it requires.

because

*** there is no question that successful Prolog programming requires certain language skills.

*** "successful Prolog programming" means producing a Prolog program that meets a given set of specifications on time and under budget (as they say in Hollywood).

so

*** if is is not possible to settle objectively the question of whether a given Prolog program meets a given set of specifications on time and under budget then either there is something wrong with the specifications or all the clocks in town have stopped working or the bookkeeper has made off with the books.

But saying "successful Prolog programming" instead of "successful operation of the PIE" gets me into trouble further down the road,
on two counts.

First, when we talk about Prolog programming, we are almost invariably talking about using Prolog "just like any other programming language" -- that is, using Prolog to solve the sorts of problems that get talked about in the newsgroup all the time -- whereas only rarely if ever are we talking about what might be called the "carry-on" effect that this problem solving can have on the (native) language skills of the problem solver, which is exactly what I /was/ talking about in my reply to Jan (and I /am/ talking about in 'tlm-skills.html').

Second, if there is anything that 15 years of following this newsgroup has drilled into my head, it is the distinction between using Prolog to merely /describe/ a problem versus using Prolog to /solve/ a problem in a timely and cost-effective manner -- and because both of these activities involve using Prolog, if I lump both of them together under the gerund "Prolog programming" (from the verb, "to program in Prolog") then I lose one degree of freedom. That may seem to be a quibble, but "to describe in Prolog" doesn't work as a verb, so I can't say "Prolog describing", but by using the neutral phrase "successful operation of the PIE" instead of saying "successful Prolog programming". I can still say things like "I am reasonably proficient at using Prolog to describe problems", but I certainly would not call myself a Prolog /programmer/".

To me, "Prolog describing" is like drawing pictures, but Prolog programming is like actually building houses.

To borrow a metaphor from the great W.M. Waite, Prolog is like Janus, the Greek god of doorways: it looks in two directions at the same time -- one outward, one inward.

[5:30 PM] Cheers -- billh
.



Relevant Pages

  • Re: Is Prolog good for AI? (was: Minsky still posting)
    ... > than a programming language suitable for large scale direct human use. ... but it was Prolog nor AI. ... >> than most other languages. ... PHP because it solves a very specific problem. ...
    (comp.lang.prolog)
  • Re: Sublists question
    ... I do not really get what the predicate means or does. ... >>helps just to write the predicate out clearly in natural language, ... >>then translate into Prolog. ... more as a functional programming language than as a logic ...
    (comp.lang.prolog)
  • Hear Ye, Hear Ye, Hear Ye...
    ... and Imposium on the First Annual N Queens in Prolog ... Programming Conference and Review. ... The Chair will hear proposals on what to call the ... The Chair will be competing under the Initiate title, ...
    (comp.lang.prolog)
  • Re: A few questions about Prolog...
    ... few Prolog implementations, and would appreciate if the community ... SWI-Prolog uses a lot of memory for stacks? ... unexpected is behavior of your program caused by programming error. ...
    (comp.lang.prolog)
  • Re: Parallel Prolog
    ... programming language rather than "parallel Prolog". ... could legitimately be called "parallel Prolog", ... speedup is greater than predicted"? ...
    (comp.lang.prolog)