Base versions of Dyalog APL for Windows

Installing APL, Sorting out Fonts, Keyboards, etc.
User avatar
AndyS|Dyalog
Posts: 263
Joined: Tue May 12, 2009 6:06 pm

Base versions of Dyalog APL for Windows

Post by AndyS|Dyalog »

[Updated 2017-06-30 to include 16.0 details]

This list details the base executables that appear in the release of each version of Dyalog APL for Windows. It details the version number, the date the file was created and the buildIDs for the (up to 4) different editions/widths of interpreter.

The patching mechanism needs to start with the appropriate executable, otherwise you will get Error 404s and other error messages.

From V12.0 onwards Dyalog creates a separate subdirectory, called Base, which contains amongst other things a copy of the base dyalog.exe. For V11 and prior it is advisable to take a copy of the original dyalog.exe and use that as the start point for patching.

The date of files is what the operating system will reports. The BuildID and version number can be found in the Help -> About box in the session, or by running +2 ⎕nq '.' 'GetbuildID' and '.' ⎕wg 'APLVersion' respectively.

Code: Select all

      Version    Base Date      32C        64C        32U        64U

    16.0.30257   2017-06-27   44daea5f   d3219faa   bdf2b154   88ac4dfd
    15.0.27693   2016-06-27   aa5e6817   82de62d7   c6cafb48   083ab69f
    14.1.25052   2015-06-10   b829acca   ebf2b0db   55c17336   13331fd6
    14.0.21929   2014-06-28   48f99715   194bb4f7   4e93ab99   5bddb8c8
    13.2.16716   2013-01-30   89f58904   5c3ab8bb   6ddadbb2   8d823338
    13.1.12859   2012-04-17   c3bacade   00c94e22   f398c66b   2d6e8f82
    13.0.8806    2011-04-01   e59d245a   7dd0bbb5   21986312   69fec4b0
    12.1.0.3571  2009-11-06   5027b857   9ed9bcb0   3ffa443e   cc4c9ee9
    12.0.3       2008-08-13   9237a312   f219bf20   18604a8c   ac0d2011
    11.0.1       2007-12-07   01ecca1e   092072fe     N/A        N/A
User avatar
Dick Bowman
Posts: 235
Joined: Thu Jun 18, 2009 4:55 pm
Contact:

Re: Base versions of Dyalog APL for Windows

Post by Dick Bowman »

Or, for the less archaically-minded...

#.GetBuildID 0
e49218e2
#.APLVersion
Windows-64 12.1.1.4305 W Development
Visit http://apl.dickbowman.com to read more from Dick Bowman
User avatar
Morten|Dyalog
Posts: 460
Joined: Tue Sep 09, 2008 3:52 pm

Re: Base versions of Dyalog APL for Windows

Post by Morten|Dyalog »

... except that these expressions only work with "Expose properties of root" enabled - which is not the default setting.
User avatar
Phil Last
Posts: 628
Joined: Thu Jun 18, 2009 6:29 pm
Location: Wessex

Re: Base versions of Dyalog APL for Windows

Post by Phil Last »

and given that their accessibility is quite important could Root Properties be added as a third bit to the value of ⎕WX so that given a current value of 3, assigning it 7 would automatically expose root properties in the local environment?
User avatar
Morten|Dyalog
Posts: 460
Joined: Tue Sep 09, 2008 3:52 pm

Re: Base versions of Dyalog APL for Windows

Post by Morten|Dyalog »

I could imagine making something like []SYSTEM.GetBuildID available from anywhere, but I think it would be a mistake to extend the support for exposing these methods as "part of the workspace". I have never felt comfortable with the flag which adds these potential name conflicts with user code.
User avatar
Dick Bowman
Posts: 235
Joined: Thu Jun 18, 2009 4:55 pm
Contact:

Re: Base versions of Dyalog APL for Windows

Post by Dick Bowman »

Morten|Dyalog wrote:... except that these expressions only work with "Expose properties of root" enabled - which is not the default setting.


I wish I understood why the default setting is what it is. I have run with it enabled "for ever" - the only problems I ever get with it are having to undo the default every time there's a new version.
Visit http://apl.dickbowman.com to read more from Dick Bowman
User avatar
Phil Last
Posts: 628
Joined: Thu Jun 18, 2009 6:29 pm
Location: Wessex

Re: Base versions of Dyalog APL for Windows

Post by Phil Last »

Morten|Dyalog wrote:I have never felt comfortable with the flag which adds these potential name conflicts with user code.

So if it were made available under program control we could control it:
{
    ...
    ⎕WX←4+4|⎕WX
    ver←#.APLVersion
    ⎕WX-←4
    ...
}
As it is, if we need it we're stuck with it all the time.
User avatar
Morten|Dyalog
Posts: 460
Joined: Tue Sep 09, 2008 3:52 pm

Re: Base versions of Dyalog APL for Windows

Post by Morten|Dyalog »

GetBuildID *is* already "available under program control":

{2 ⎕NQ '.' 'GetBuildID'}

I don't see the advantage of messing with more and more bits in ⎕WX (which is another one of those features that one would ideally want to retire eventually, rather than add to) in order to be able to write #.GetBuildID. The potential for future name conflicts with existing names in your workspace as we add more root methods just doesn't make this an attractive approach (to me).
User avatar
Dick Bowman
Posts: 235
Joined: Thu Jun 18, 2009 4:55 pm
Contact:

Re: Base versions of Dyalog APL for Windows

Post by Dick Bowman »

Oh, now I get it - name conflicts.

I wonder whether stuff like GetBuildID belongs in a "system" namespace, something other than quadSE (that's too full already)? That way we only have one name to conflict with, and a suitably obtuse name might reduce the chances still further.
Visit http://apl.dickbowman.com to read more from Dick Bowman
User avatar
Morten|Dyalog
Posts: 460
Joined: Tue Sep 09, 2008 3:52 pm

Re: Base versions of Dyalog APL for Windows

Post by Morten|Dyalog »

Yup - ⎕system.GetBuildID. ⎕.GetBuildID looks good to me, but won't work so long as ⎕ is "evaluated input".
Post Reply