bug-apl
[Top][All Lists]
Advanced

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

Re: [Bug-apl] )SAVE should show WSID


From: Elias Mårtenson
Subject: Re: [Bug-apl] )SAVE should show WSID
Date: Fri, 9 May 2014 20:21:47 +0800

You are right. )SAVE is indeed a command, and the output is meant for humans to read. It should be local time. That said, I don't mind seeing the timezone there as well. It's helpful when looking at logs (I'm speaking from experience here since I'm right now sitting in a hotel room in Sydney, two timezones away from where I live).

Regards,
Elias


On 9 May 2014 20:17, Blake McBride <address@hidden> wrote:
Given that )SAVE is a command and not a function (something intended to be used by another program), I think it is clear that it should display local time without any timezone information.

Secondly, the output message from )SAVE is for convenience of the immediate programmer doing the work, and not some data to be used to communicate across countries.  If I want to do that, Unix gives plenty of information associated with the saved file.

So, in general, I agree with you say completely.  It just doesn't apply to the )SAVE commend (except in possible very rare cases.)

In the case of ⎕TS, that too should return local time for many reasons.  Creating an additional ⎕ function to return GMT time is fine and useful too.

Thanks.

Blake



On Fri, May 9, 2014 at 6:56 AM, Elias Mårtenson <address@hidden> wrote:
Before I continue further, I want to emphasise that there is a problem with the output of )SAVE. It may, however, be different from your opinion.

There are two different things to think about when working with time:
  • Displaying time information for the user's benefit
  • For processing by a computer program
In the first case, it's natural to display local time. Usually one displays the local time followed by the an indication of what timezone was used when displaying this value. This is where GNU APL does things wrong, as it's displaying GMT along with the timezone information where the save happened. This is not right. When displaying GMT time, one should indicate the timezone as Z, UTC, GMT+0, or something similar.

The second case is when the number is returned for the purpose of further computation. This number should (almost) always be UTC. There are of course many reasons for this, but the most compelling one is that it's very easy to convert a UTC timestamp into any other timezone for display to a user, but converting back from local time can in some cases actually be completely impossible (think daylight savings, and other adjustments).

As for time manipulation, it's an incredibly complicated subject (something I have worked a lot on in my career) and I would certainly like to see something simple, such as the Unix time_t used for time representation. The worst one I've come across is the ⎕TS form, which is pretty much impossible to work with except for displaying the current time to the user.

There are other arguments that can be made, but my mail is long enough already and I think my position has been made. :-)

Regards,
Elias


On 9 May 2014 19:42, Blake McBride <address@hidden> wrote:
Greetings,  

Two additional problems with the )SAVE message:

1.  Drop the timezone info i.e. "(GMT -5)"

2.  Display local time instead of GMT time.  

My entire life revolves around my local time.  GMT time is largely meaningless to me.  For me, GMT time only has value when I am trying to coordinate something with someone in another part of the world.  I can do the translation, when necessary, at that time.  As it is, I have to do time math each time I want to use the value/message )SAVE returns.

Thanks.

Blake


On Thu, May 8, 2014 at 11:05 PM, Blake McBride <address@hidden> wrote:
Greetings,

I believe the )SAVE command should display the name of the workspace after the date and time.  I am looking at the Gilman and Rose APL2 book and that's the way they show it.  (In addition to my memory.)

Thanks.

Blake






reply via email to

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