HDTenEightyP/NetNews huggingface dataset:
From: gregory@cs.sfu.ca (Gregory Sidebottom)
Subject: Re: SICStus Prolog singleton warnings slow down while consulting a file
Organization: CSS, Simon Fraser University, Burnaby, B.C., Canada
Date: Mon, 17 Aug 1992 21:04:26 GMT

In article <1992Aug17.172126.19111@watson.ibm.com> rah@ybrig.zurich.ibm.com (Ralf Hauser) writes:

   While porting a big C-Prolog program to SICStus Prolog, I encounter
   the following problem:

   To make the program readable, I gave a name to many variables which
   are essentially _ (don't care). 

That is a good thing to do.

   When (re)consulting my program,
   every time many screens of such warnings are produced which
   slow down the testing and programming annoyingly.

   Does anybody know, how to suppress these warnings or to
   maintain the same expressivity of code without creating those
   "singleton variables".

Try starting your singlton variables with the underscore symbol.  This
tells the compiler that you know it's a singlton variable, even though
you want to give it a meaningful name.  So you can write:

p(_SomethingMeaningful).

and not get a warning in Sicstus.  But note that variables beginning
with an underscore are not anonymous--the two variable symbols in:

p(_X) :- q(_X).

denote the same variable.  Whereas in:

p(_) :- q(_).

the underscores denote two distinct variables.

Greg
-- 
Greg Sidebottom,                                      | There's not a word that
Expert Systems Laboratory, Centre for Systems Science | goes here that rhymes
Simon Fraser University, Burnaby BC V5A 1S6, Canada   | with anything. -CVB
Newsgroups: comp.lang.prolog
From: jah@cs.mu.OZ.AU (James Harland)
Subject: Second CFP: Workshop on Deductive Databases at JICSLP'92 		 Second Call for Participation
Originator: jah@munta.cs.mu.OZ.AU
Reply-To: jah@cs.mu.OZ.AU (James Harland)
Organization: Department of Computer Science, University of Melbourne
Date: Tue, 18 Aug 1992 06:09:14 GMT



		Second Call for Participation

		Workshop on Deductive Databases
	         Saturday, 14 November, 1992
		    in conjunction with the
       Joint International Conference and Symposium on Logic Programming
		November 9-13, 1992, Washington D.C., USA

The development of deductive database systems, which apply logic
programming techniques to databases, has been of growing interest in recent
years, and has resulted in a significant amount of interaction between
researchers of varying backgrounds. This workshop is intended to provide a
forum for theoreticians, implementors and those involved in applications to
exchange ideas on the development of deductive databases systems. Topics
may include (but need not be limited to) program transformations, parallel
and distributed execution, optimization and implementation techniques, and
applications.

Abstracts and/or proposals for system demonstrations should be send to the
address below:

	 Prof. Kotagiri Ramamohanarao
	 Department of Computer Science
	 University of Melbourne
	 Parkville, 3052
	 Australia

	 email: rao@cs.mu.oz.au
	 Phone: +61 3 282 2400
	 Fax:   +61 3 282 2444

Abstracts should be no more than 8-10 pages in length, and there is no
restriction on the format to be used. However, Latex/Tex format is
preferred, particularly styles similar to those used for submissions and/or
camera-ready copy for the main conference. Submission by email rather than
printed copies is strongly encouraged. 

Copies of all accepted abstracts will be distributed to participants at the
workshop. In order to provide continued access to the abstracts presented
at the workshop, the proceedings will be available as a University of
Melbourne technical report.

Submission Dead-line: September 7, 1992
Notification Sent: October 1, 1992
Final Manuscript Due: October 15, 1992

Organizing Committee: Kotagiri Ramamohanarao, Guozhu Dong, James Harland
 



Keywords:
From: holliday@csgrad.cs.vt.edu (Glenn Holliday)
Newsgroups: comp.lang.prolog
Subject: Lloyd, _Foundations ..._
Date: 14 Aug 92 03:42:04 GMT
Organization: VPI&SU Computer Science Department, Blacksburg, VA


     I finally saved up $$$ for Lloyd's _Foundations of Logic
Programming_, only to find the price has jumped again - to $59.  Anybody
know of a low-cost source for this classic?
	(Hope this isn't an inappropriate query for the newsgroup --
sorry if it is.  Any email replies will be welcomed.)
From: ucjtrjf@ucl.ac.uk (Jonny Farringdon)
Newsgroups: comp.lang.prolog
Subject: Re: fuzzy unification of floating point numbers
Date: 13 Aug 92 13:39:30 GMT
Organization: Bloomsbury Computing Consortium

>Does anybody know the prolog for UNIX which supports
>the fuzzy unification of floating point numbers,     
>that is two floating point numbers are considered 
>equal if | X - Y | =< FUZZVALUE  and this FUZZVALUE
>can be changed by user? I know that VM/Prolog has
>this feature, but it works on mainframe.
>Any information is appreciated.

Mike,

each time you want to do

thing(A,B) :- 
    a = b, 
    important_thing.

do:

thing(A,B) :-
    fuzzy_equality_test(A,B),
    important_thing.

fuzzy_equality_test(A,B) :-
    fuzzy_unify_value(V), !,
    Diff is A - B,
    absolute_value(Diff,Abs_Diff),
    Abs_Diff < V.

fuzzy_equality_test(A,A) :- !.

J.  ucjtrjf@ucl.ac.uk
From: murad@eng.umd.edu (Ahsun Humayun Murad)
Newsgroups: comp.lang.prolog
Subject: another SBPROLOG Question.
Date: 14 Aug 92 11:15:40 GMT
Reply-To: murad@eng.umd.edu (Ahsun Humayun Murad)
Organization: College of Engineering, Maryversity of Uniland, College Park


Would someone please tell me what is going on?

(I am just starting to use prolog, and was looking for a 
compiler/interpreter, so I downloaded the stuff from cs.arizona.edu
(/sbprolog/v3), and installed it.
....... Unlike some others, I did not have any problems here. )

Now, I want to use it. Could someone please tell me how to
start up the interpreter and do something/anything (even a query like 2=3 is
fine). (The manual I have gives the following instructions:--

       sbprolog <bc_file>

where <bc_file> is the file $readloop in the modlib directory, i.e.,

       sbprolog <path>/modlib/'$readloop'  .

Anyway, the program does not complain about a missing $readloop file, so
I guess it has found it. However, this is what happens:
----------------------------------------
% sbprolog '../modlib/$readloop'

Halt. Program terminated normally
----------------------------------------
and that is that. Now this would be fine if I had actually tried to run a
program, but the poor guy is only just trying to get started.

I will appreciate any help at all. Thanks.
Newsgroups: comp.lang.prolog
From: meskes@ulysses.informatik.rwth-aachen.de (Michael Meskes)
Subject: Help on problem needed!
Keywords: help
Organization: Rechnerbetrieb Informatik  /  RWTH Aachen
Date: 13 Aug 92 12:42:51 GMT

Not having much experience in Prolog programming I have one question which
seems very difficult to me:

Can you program a IF...THEN...ELSE in Prolog without using the cut?

Let me explain my problem in a few words:
I have a predicate A/3 containing some tuple (X,Y,Z), where Z maybe 0 or 1.
There is a tuple (X,Y,1) for all (X,Y), but there does not have to be a (X,Y,0).
What I want to have is a predicate B/3 containing exactly one tuple (X,Y,U)
for all (X,Y) with U is the lowest Z for which a(X,Y,Z). is true. Or formulated
in another language:
IF (exists a(X,Y,0)) THEN b(X,Y,Z) = a(X,Y,0) ELSE b(X,Y,Z) = a(X,Y,1).
By the way, I need to program this without the cut and without using list data
structures not supported by my test system.

Can anyone help me? Thanks in advance.

Michael
-- 
Michael Meskes, Lehrstuhl fuer angewandte Mathematik insb. Informatik,
RWTH-Aachen, Ahornstr. 55, D-W-5100 Aachen
Email: meskes@ulysses.informatik.rwth-aachen.de
Newsgroups: comp.lang.prolog
From: pedersen@seas.smu.edu (Ted Pedersen)
Subject: Knights Tour
Organization: SMU School Of Engineering and Applied Science
Date: Thu, 13 Aug 1992 16:58:12 GMT

I would very much like to find some Prolog code to solve the Knight's Tour
problem. This is the problem where you have a lone knight on a chess board and 
the goal is to have your knight visit all of the squares on the board and 
return to his starting place without visiting any square twice. 

I am not very experienced with Prolog so I am using these problems to (hopefully
) teach myself a little bit about Prolog.
  
If anyone knows of any repositories of source code to solve these sorts of
problems (Knights Tour, N-Queens problem, etc.) I would appreciate any tips. 
I enjoy these sorts of problems so anyone who knows of interesting variations
on the Knight's Tour or N-Queens problem etc. I would like to hear about them.
 
Ted Pedersen
Southern Methodist University
Newsgroups: comp.lang.prolog
From: woo@ornl.gov(John W. Wooten)
Subject: Re: Does anyone know SBProlog3.1?
Organization: Oak Ridge National Laboratory
Date: Wed, 12 Aug 1992 12:37:59 GMT

In article <roland.713620198@sun-4> roland@sun-4.cs.uct.ac.za (Roland  
Paterson-Jones) writes:
> 
> We have been trying to install SBProlog 3.1 on our Sun SparcStation  
1+ with
> little success.
> 
> ftp'ing from optima.cs.arizona.edu had some surprises:
> 	- The system was not tar'ed directory by directory as seems the 
Please post any replies to the net.  I'm interested in upgrading to 3.1  
also.
--
-----------------
J. W. Wooten
Newsgroups: comp.lang.prolog
From: hermann@nebula.sni.de (Hermann)
Subject: Re: Help on problem needed!
Date: Mon, 17 Aug 1992 05:43:22 GMT
Organization: Siemens Nixdorf Info.Sys. AG, Paderborn, Germany
Keywords: help

Try this one

	b(X,Y,0) :-
		a(X,Y,0).

	b(X,Y,1) :-
		not a(X,Y,0),
		a(X,Y,1).
--
+===========================================================================+
|Hermann Schultebeyring            |Tel. ++49 (0)5251 8-31863               |
|SNI AG                            |Fax: ++49 (0)5251 8-31869               |
|AI Centre AP333                   |Email:    schultebeyring.pad@sni.de     |
From: torbenm@diku.dk (Torben AEgidius Mogensen)
Newsgroups: comp.lang.prolog
Subject: Re: transitive and symetric relations
Date: 13 Aug 92 11:17:45 GMT
Distribution: comp.lang.prolog
Organization: Department of Computer Science, U of Copenhagen

fdb@syllogic.nl (Frank de Bruijn) writes:

>swk@seymour.mlb.semi.harris.com (Song W. Koh) writes:

>>[I'm a] prolog beginner.  I am having trouble describing transitive and
>>symetric relations without stack overflows.  Things like:

>>distance(X,Y,D) :- distance(Y,X,D).

>I see, are you blind, or just too lazy to read a decent textbook on
>PROLOG? Even the "not so good books" describe this.

>The standard solution is to use a different predicate name for the distance
>facts. (It has always struck me as a bit of a diappointment though)

>distance(X, Y, D):- distance_fact(X, Y, D).
>distance(X, Y, D):- distance_fact(Y, X, D).
>distance(X,Z,D):- distance_fact(X,Y,D1), distance_fact(Y,Z,D2), D is D1 + D2 .

This will not work: it will not find distances of points that require
paths more than two long. A correct formulation of the transitive
clause is

distance(X,Z,D):- distance_fact(X,Y,D1), distance(Y,Z,D2), D is D1 + D2.

So be sure to get your answers right before you flame someone for
asking the obvious.

	Torben Mogensen (torbenm@diku.dk)
From: ken@aiai.ed.ac.uk (Ken Johnson)
Newsgroups: comp.lang.prolog
Subject: Re: SICStus Prolog singleton warnings slow down while consulting a file
Keywords: singleton
Date: 18 Aug 92 17:16:03 GMT
Followup-To: comp.lang.prolog
Organization: Bugs-R-Us

In article <5100@sersun1.essex.ac.uk> palmm@essex.ac.uk (Palmer M J)
writes:

#  Some systems (e.g.  Qunitus Prolog) allow you to use the form _VarName. 
#  This is still an anonymous variable but with a name.  You might like to
#  try this. 

Forgive my pedantry, but (in Edinburgh Prolog) ocurrences of variables
with the same name are equal to each other, even if the name begins with
_.  So _A and _B, etc., are not anonymous variables.  The point is that
the singleton variable check is not applied to such variable names. 

Therefore such code as

    different(A,A) :-
       !,
       fail.

    different(_A,_B).

does not generate a singleton error message.  (NB This predicate is not
the best way to test whether _A and _B are different, unless you want to
unify them if possible.  It's just a way to illustrate the magical
property of the variable names _A and _B.)

-- 
////  Advice to dieters:          ////  Ken Johnson, A I Applications Institute
////    Never eat more than       ////       80 South Bridge, EDINBURGH EH1 1HN
////    you can carry.            ////                 E-mail ken@aiai.ed.ac.uk
////               -- Miss Piggy  ////     phone 031-650 2756  fax 031-650 6513
From: tarau@IRO.UMontreal.CA (Paul Tarau)
Newsgroups: comp.lang.prolog
Subject: BinProlog 1.39
Date: 22 Aug 92 02:26:33 GMT
Reply-To: tarau@IRO.UMontreal.CA (Paul Tarau)
Distribution: comp.lang.prolog
Organization: Universite de Montreal

A new version (1.39) of BinProlog for SPARC, SUN3, NEXT and 386/486 is
now available.

BinProlog is free for research and other non-profit purposes.

The compiler makes 215 KLIPS (on Sparc 2) and still uses a very small
(41K) emulator.

The NEXT version (101 KLIPS) is a new addition to the distribution.

You can get it by anonymous ftp from:

 139.103.16.2 (clement.info.umoncton.ca) in the directory BinProlog. 

FILES:

====>  binpro.1.39.tar.Z -- BinProlog 1.39 for Sparc, sun3, Next and 386
---->  papers.tar.Z -- papers related to the implementation

A NEW data area ("the blackboard") has been added, where heap-based
terms can be stored and accessed efficiently with a a 2-key hashing function.

The copying algorithm is relatively smart: parts of the heap objects
already on the blackboard are not copied but just "pointed to".

Operationally, the blackboard looks "older" than everything on the heap.

Objects on the blackboard have indefinite extent. Their
"names" however, are "rigid designators" that can change their reference.
If the garbage collector "can prove" that an object or some part of it
will never be used again, the space is eventually recuperated.
Although objects cannot be "changed" they can be further instantiated as it happens to ordinary Prolog terms.

Otherwise, objects on the blackboard behave logically: they can be unified,
they are subject to backtracking and so on.

The blackboard can be used either through a Linda-style interface
or through an assert-retract style interface. It also gives constant-time
sparse arrays and lemmas.

A lot of basic Prolog utilities have been added (dynamic clauses,
a metainterpreter with tracing facility, sort, setof, dynamic operators
and more arithmetic).

Now BinProlog can manipulate continuations as first order objects,
using 3 blackboard-based primitives, push_cc/0 call_cc/0 and pop_cc/0.

A few programs (an automatic Tetris player, a knight-tour, an OR-parallel
simulator, Fibonacci & tak with lemmas) illustrate some of the new features.

Please send comments and bug reports to binprolog@info.umoncton.ca.

Paul Tarau,
Dept. of Computer Science,
Universite de Moncton,
Moncton N.B.
CANADA E1A-3E9
E-MAIL: tarau@info.umoncton.ca
Newsgroups: comp.lang.prolog
From: px@fct.unl.pt (Joaquim Baptista [pxQuim])
Subject: Re: SICStus Prolog singleton warnings slow down while consulting a file
Organization: Universidade Nova de Lisboa -- Lisbon, Portugal
Date: Wed, 19 Aug 1992 18:21:27 GMT

In article <1992Aug17.172126.19111@watson.ibm.com>
rah@ybrig.zurich.ibm.com (Ralf Hauser) writes:

   To make the program readable, I gave a name to many variables which
   are essentially _ (don't care). When (re)consulting my program,
   every time many screens of such warnings are produced which
   slow down the testing and programming annoyingly.

   Does anybody know, how to suppress these warnings or to
   maintain the same expressivity of code without creating those
   "singleton variables".

In many Prologs, variables starting with _ are taken to be don't care.
I often used names such as _List, which mark the variable as don't
care but still identify its meaning.
____
Joaquim Baptista, aka pxQuim

Email: px@fct.unl.pt  Voice: +351-1-295 3220  Fax: +351-1-295 5641
Snail: Dept Informatica, Universidade Nova de Lisboa
       P-2825 Monte de Caparica, Portugal
From: serge@irisa.fr (Serge Le Huitouze)
Newsgroups: comp.lang.prolog
Subject: Threaded code
Date: 21 Aug 92 09:45:12 GMT
Reply-To: brisset@irisa.fr
Organization: Irisa, Rennes(FR)

I would like to know what a "threaded code" implementation of Prolog is.

I have been told that it is a sequence of "JSR" or "CALL", but I am not sure.

Any enlightening remarks will be welcome.
Newsgroups: comp.lang.prolog
From: sivand@eng.auburn.edu (Sivand Lakmazaheri)
Subject: RESEARCH ASSISTANT NEEDED
Reply-To: sivand@eng.auburn.edu
Organization: Auburn University Engineering
Date: Wed, 19 Aug 1992 18:30:52 GMT



                 Research Assistantship Available



Research assistantship is available in the area of computer-aided engineering.
The research involves automating 2D and 3D detailed drawings of structural
systems via the knowledge-based approach.  Knowledge of databases, knowledge-
based systems, and computer-aided design & drafting is necessary.  Working
knowledge of C programming is a must. Knowledge of structural engineering is
helpful but is not necessary. The student is expected to pursue graduate studies
in the area of computer-aided engineering leading to MS or PhD in civil
engineering or a related engineering discipline. The assistantship is available beginning January 1993. To apply send your resume and a copy of your transcript
to:


sivand@eng.auburn.edu

Or

Professor Sivand Lakmazaheri
Civil Engineering Department
238 Harbert Engineering Center
Auburn University, Alabama 36849

 


Newsgroups: comp.lang.prolog
From: ae007@yfn.ysu.edu (Daniel Newcombe)
Subject: SWI-Prolog on 386BSD (or any BSD Unix)
Organization: Youngstown State University/Youngstown Free-Net
Date: Wed, 12 Aug 1992 21:27:54 GMT


Hi.. I am trying to get SWI-Prolog to run on 386BSD Unix.  Since
stuff that compiles on BSD 4.? Unix is supposed to be compatiable
Has anyone gotten this to run on a BSD unix?  I asked on  
comp.unix.bsd and I was told the the linux port should work with
few mods, but I am not that familiar with C so it's all rather
vague to me.  Any help would be muchly appreciated.  Thanks...
  -Dan
(Please mail to STDN@VM.MARIST.EDU)
-- 
    -Dan Newcombe
Internet Address:  STDN@VM.MARIST.EDU
Youngstown Freenet: ae007@yfn.ysu.edu
GOAL: To put the world on 3.5" diskettes...  :)
From: csa09@seq1.keele.ac.uk (Paul Singleton)
Newsgroups: comp.lang.prolog
Subject: Re: SICStus Prolog singleton warnings slow down while consulting a file
Date: 19 Aug 92 11:32:21 GMT
Organization: University of Keele, England

From article <1992Aug17.210426.14213@cs.sfu.ca>, by gregory@cs.sfu.ca (Gregory Sidebottom):

> Try starting your singlton variables with the underscore symbol.  This
> tells the compiler that you know it's a singlton variable, even though
> you want to give it a meaningful name.  So you can write:
> 
> p(_SomethingMeaningful).
> 
> and not get a warning in Sicstus.  But note that variables beginning
> with an underscore are not anonymous--the two variable symbols in:
> 
> p(_X) :- q(_X).
> 
> denote the same variable. 

In which case the compiler ought to give a warning "Multiple occurences of
a variable for which the singleton variable check has been suppressed'.

I suggest that such variables are known as "Singleton" variables as opposed
to "singleton" variables ...
----
  __   __    Paul Singleton (Mr)           JANET: paul@uk.ac.keele.cs
 |__) (__    Computer Science Dept.        other: paul@cs.keele.ac.uk
 |  .  __).  Keele University, Newcastle,    tel: +44 (0)782 621111 x7355
             Staffs ST5 5BG, ENGLAND         fax: +44 (0)782 713082
From: ucjtrjf@ucl.ac.uk (Jonny Farringdon)
Newsgroups: comp.lang.prolog
Subject: Re: fuzzy unification of floating point numbers
Date: 14 Aug 92 09:35:49 GMT
Organization: Bloomsbury Computing Consortium

Mike,

I think i mis-understood what you were after, ie equality matching rather than
unification. So  (ummm) is this the kind of thing you want?

That the kind of thing, so you can supply constants or variables?
how about ....

fuzzy_unify(A,B) :-
    fuzzy_range(FR),
    not( var(A) ),
    not( var(B) ), !,
    Diff is A - B,
    absolute_value(Diff,Abs_Diff),
    Abs_Diff < FR.

fuzzy_unify(A,B) :-
    fuzzy_range(FR),
    not( var(A) ),
    var(B), !,
    random(Rand),   
    Addition is FR * Rand,
    random_sign(Sign),           % returns -1 or +1
    B is (Sign*Addition) + A.
    
fuzzy_unify(A,B) :-
    fuzzy_range(FR),
    var(A),
    not( var(B) ), !,
    fuzzy_unify(B,A).       % allows A or B it be variables
    
fuzzy_unify(A,A), !.


so  either A or B or Both can be variable, plus it works if NO fuzzy_range is
specified.  Hope that is of more help,  J.  ucjtrjf@ucl.ac.uk
From: Stefano_De_Luca@mas.sublink.org (Stefano De Luca)
Newsgroups: comp.lang.prolog
Subject: PROLOG in C
Date: 12 Aug 92 03:00:51 GMT
Organization: MangaZone Advanced Services, Rome - ITALY


Hi,

anyone knows everythings about a pd PROLOG interpreter/compiler in C, with
the source available? I need a C source to modify it, on MS-DOS, OS/2 or
Unix.

Thank you!

stefano de luca
stefano_de_luca@mas.sublink.org
via di Tor Paluzzi, 83/d
00040 Cecchina (Roma) - Italy

 -- AEd V1.36/Eval

-- Via DLG Pro v0.992
From: andrew@zone4.ocunix.on.ca (Andrew Low)
Newsgroups: comp.lang.smalltalk
Distribution: world
Subject: Re: Digitalk ST/V-PM: more problems?!
Organization: Zone4
Date: Sun, 16 Aug 92 17:10:06 GMT

In article <713898828snx@feki.toppoint.de> 
marten@feki.toppoint.de (Marten Feldtmann) writes:
>Another nice way to crash ST-V/PM 1.4 with OS/2 2.0 (at least on my system):
[..code deleted..]
>Can someone confirm this?

This is a bug with V, when it was reported to Digitalk (so I was told) 
they denied that it was their problem and that it was an OS2 bug.  Later
on however someone managed to create a kludge fix for the problem which
proved that it was indeed a V bug.  I believe Digitalk has it down as
one of the things to fix.. 

The 'work around' is something along the lines of "don't cause windows to
update too quickly". - really..

Disclaimer: My memory of this is sketchy at best.. I have no more information
on this particular bug.
+/+\+/+\+/+chew carefully/+\+/+\+/+\+/+\+/+\+/+\+/+\+/+\+/+\+/+\+/+\+/+\+/+\+/+
Roo [andrew@zone4.ocunix.on.ca] m a c h i n e l o v e h a t e f e a r v o i d .
               "dreams are all that separate us from the machines"
From: rick@rick.infoserv.com (Rick Klement)
Newsgroups: comp.lang.smalltalk
Subject: Re: catalog of classic bugs
Summary: want more
Date: 14 Aug 92 03:03:47 GMT
Organization: Rick's Place, San Jose, CA, USA

In article <1992Aug13.203549.224@nstn.ns.ca>, bushell@fox.nstn.ns.ca (Tom Bushell) writes:
> Ralph,
> 
> Thanks for the catalog of classic bugs.  I think
> this will be a real service to many of us on this newsgroup.
> 
> -Tom Bushell

A catalog is good, a 'lint' would be even better...

Even 'C' has a 'lint'...

-- 
Rick Klement - email:   rick@infoserv.com

#include <standard.disclaimer>
A respected software manager once said: "There may even be some
Computer Science graduates that can actually do useful programming." or
something like that. I know who but I'm not telling...