Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!watmath!clyde!burl!hou3c!hocda!houxm!vax135!cornell!uw-beaver!tektronix!hplabs!sri-unix!O'KeefeHPS
From: O'KeefeHPS@sri-unix.UUCP
Newsgroups: net.lang.prolog
Subject: A Hack for DEC-10 Prolog Input
Message-ID: <12130@sri-arpa.UUCP>
Date: Mon, 17-Sep-84 08:01:48 EDT
Article-I.D.: sri-arpa.12130
Posted: Mon Sep 17 08:01:48 1984
Date-Received: Tue, 25-Sep-84 20:39:45 EDT
Lines: 41

From:  O'Keefe HPS (on ERCC DEC-10)

I've often moaned about the "fact" that DEC-10 Prolog
doesn't let you have more than one channel reading from
the same file.  While I had realised that in C-Prolog I
could say

        see('fred')             for channel A
        see('./fred')           for channel B
        see('../fred')          for channel C

and so on (just stick N "./"s after the last "/"), I didn't
realise that something similar could be done in DEC-10 Prolog.
But it can!

Use     see('fred')             for channel A
        see('Fred')             for channel B
        see('FRED')             for channel C

and so on.  The Bottoms-10 operating system ignores case,
but DEC-10 Prolog doesn't!

Myself, I class this as a hack, but if you have a program
which has to keep its channels intact despite the user opening
and closing things at least you can use all upper case yourself
and force the user's file names to lower case.

I discovered this while working on the input/output section of
my "draft standard for Prolog built in predicates".  I've come
up with a new set of basic operations which should be generally
implementable and which have some nice properties, and to excuse
this decided to write a backwards compatibility library.  While
testing this, I tried out a number of strange things, such as
tell(a+b).  (It just fails.)  I'm prepared to defend almost any
aspect of DEC-10 Prolog at length, but not the file handling
commands.


***Sender closed connection***

=== Network Mail from host su-score.arpa on Tue Sep 18 02:44:24  ===