bug-apl
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-apl] Should Continue wsid be stored with libref-0?


From: Juergen Sauermann
Subject: Re: [Bug-apl] Should Continue wsid be stored with libref-0?
Date: Thu, 4 May 2017 18:24:47 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:45.0) Gecko/20100101 Thunderbird/45.2.0

Hi Leslie,

traditionally LIBREF-0 aka. the default library, has been assumed to be a non-shared library.
The reason is that:

1. You need at least one non-shared (i.e per user) library. Exactly for storing the )CONTINUE workspace, and
2. many users (or at least myself) do not set up additional libraries.

I just tested IBM APL2 (PC version) and they also store the CONTIUNUE workspace in the default library.
Their library tree lives in a somewhat odd place: C:\Program Files/ibmapl2w. This roughly corresponds
to something like /usr/bin/ibmaplw on GNU/Linux and would violate the file system hierarchy standard
(FHS). You also get the same behavior that you describe below. Except that Windows is not normally used by
different users.

So IBM APL2 uses C:\Program Files/ibmapl2w\ for what is called the library root in GNU APL and uses
the following fixed (non-configurable) mapping between library numbers and the sub directories of the lib root:

0: bin
1: wslib1
2: wslib2

GNU APL has adopted the naming (read: wslibN) of IBM APL2, but with the following changes:

* use workspace instead of bin,
* use 10 lib numbers instead of 3, and
* make every library number configurable so that the user has full control over where the libraries live.

It may be that IBM APL2 supports more than 2 wslib directories but only 2 are being installed by
IBM APL2. In those they store some workspaces shipped with IBM APL2. I would say that the IBM lib
numbers 1 and 2 roughly correspnd to GNU APL lib numbers 3, 4, and 5 in that they are used for
workspaces shipped with GNU APL.

The cool thing in your Dropbox setup is that you can say )CONTINUE on one machine and continue
later on another machine. To me that looks more like a feature than a bug and you can easily
configure otherwise if you don't like the feature.

I would also assume that the scenario below only works if A, B, and C  are logged in on the same
machine or network under the same user name, because otherwise they would get an error instead
of overriding each other's CONTINUE workspace files.


Best Regards,
/// Jürgen


On 05/04/2017 04:32 PM, Leslie S Satenstein wrote:
Here is a simple scenario.

LIBREF-0 /home/group/project1

With several users writing code for project1

User A issues a command )Continue and goes to lunch
User B issues a command )Continue and goes to lunch
User C issues a command )Continue and goes to lunch

Who went last was the one whose )Continue was created for A, B, C
Information for the other than last )Continue was overwritten
Another possibility is that of A,B,C , two of them could have been saving or dropping )Continue

This question is only a problem if LIBREF-0 is a shared library.  It is likely that it is shared. -- How so?

I have the LIBREF-0 as pointing to my  /home/Dropbox/APLarea.  I have access to Dropbox from multiple systems.

My view is that sometime in the future, we should consider that gnu-apl's  )Continue be stored privately within a
/home/logonid/.gnu-apl   or as /home/logonid./apl-continue.xml

Just some thoughts from an old Geezer who was an APL biggot beginning 1972

 Leslie
Leslie Satenstein
Montréal Québec, Canada
My first use of APL inhouse


reply via email to

[Prev in Thread] Current Thread [Next in Thread]