[comp.sys.ibm.pc.misc] Turbo Prolog by Borland

cracraft@wheaties.ai.mit.edu (Stuart Cracraft) (08/04/90)

Is Turbo Prolog good? What does it do well?
Any pro or con ideas? Send to me. I'll summarize.

Stuart

jgarland@kean.ucs.mun.ca (08/10/90)

In article <1990Aug10.144500.8901@canterbury.ac.nz>, fore057@canterbury.ac.nz writes:
> In article <9705@rice-chex.ai.mit.edu>, cracraft@wheaties.ai.mit.edu (Stuart Cracraft) writes:
>> Is Turbo Prolog good? What does it do well?
>> Any pro or con ideas? Send to me. I'll summarize.
>> 
>> Stuart
> 
> I do most of my programing in Turbo Prolog.  It has a brilliant development
> environment, with very effective checking of possible error sources, such as
>
...etc.

Ditto for me, in the main.  You should also know that Borland has 
released/given/sold (whatever?) the rights to Turbo Prolog back to the 
original developers who are now marketing it under the name PDC Prolog 
3.2.  PDC is not too different from TP 2.0.  They have added an OS/2 
version (which allows for development of truly enormous programmes), better 
string handling, and networking database predicates like file-sharing 
and file-locking.  Links to Microsoft C 5.1 and TC 2.0 are explicit 
and now C can be the main programme instead of only Prolog as it is in 
TP 2.0  The toolbox has been greatly upgraded including 
predicates for GUI interfaces, mouse support as well as the 
traditional text-based systems offered in the TP version. [Additional 
note: Borland has seen fit to allow PDC to continue using the BGI and 
it is completely supported in the DOS version.]

The language is very strong at building, maintaining and accessing 
databases and other files and in developing user friendly interfaces 
to these sources.  It is *very* efficient of programmer time without 
sacrificing too much in the way of computer efficiency.  What it can't 
do well is produce self-modifying code...a point that has led to flame 
wars as to whether it is *really* Prolog or not.  Short answer is: it 
isn't.  But that is no reason not to buy it if you want to develop 
applications not involving such advanced concepts in (true) Prolog.


DISCLAIMERS:  I love Turbo (PDC) Prolog (and APL) which obviously makes 
me biased in favor of languages that make some sacrifices to computer 
efficiency in the name of my efficiency.  The nice thing about Turbo 
(PDC) Prolog is that--unlike some APLs I've used--the sacrifices in 
computer efficiency are really quite minimal.  [Now if we can just get 
matrix concepts integrated into compiled Prolog...we'll really have a 
language!]  Finally, I have no commercial connection, satisfied 
customer...etc.


John Garland

Bitnet:   jgarland@mun
Internet: jgarland@kean.ucs.mun.ca

boylanr@silver.ucs.indiana.edu (ross boylan) (08/11/90)

My understanding is that Borland does not plan to develop Turbo Prolog
further.  It has some limitations on the size of objects and ability
to do virtual memory which struck me as prohibiting large scale
development. 

fore057@canterbury.ac.nz (08/10/12)

In article <9705@rice-chex.ai.mit.edu>, cracraft@wheaties.ai.mit.edu (Stuart Cracraft) writes:
> Is Turbo Prolog good? What does it do well?
> Any pro or con ideas? Send to me. I'll summarize.
> 
> Stuart

I do most of my programing in Turbo Prolog.  It has a brilliant development
environment, with very effective checking of possible error sources, such as
unmatched variable types, variables used only once in a clause, etc.  In terms
of speed, it approaches Turbo Pascal for similar operations, although they are
so different it is hard to make a precise comparison.  I've heard that Prolog
afficionados criticise Turbo Prolog because it lacks the ability to mix data
types indiscriminately.  From my point of view, predicate declaration is an
advantage, and is what gives rise to the superior error checking and speed of
Turbo.

TP has other refinements which make it useful for real world applications, such
as windowing, internal and external databasing, and a full range of graphics
commands.  If you want interfacing power quickly, then buy the toolbox as well.

I have yet to try any overlay linking, and this may be an area where TP could
be improved.  The next module of my major present project will have to be
overlay linked, and I've heard from Turbo Pascal users that this can be a
problem with large Borland-based applications.

The documentation of TP is the best I have ever come across.  You could teach
yourself Prolog from scratch with it.