APL+Win Version 7.0
Introducing APL+Win Version 7.0. Visionary yet practical, the single comprehensive development tool for creating the next generation of applications has arrived. Developers can use APL+Win to create powerful applications quickly and effectively.
APL+Win has been continuously developed and advanced for over 30 years, making it the most robust and reliable development environment available. It provides a stand alone application development environment and with APLNext WebServices, integration with the Web browser and Web services.
The APL2000 Subscription Program is designed to help customers to successfully develop, deploy, and manage systems built around a broad range of high-quality APL2000 solutions for the server and the desktop. This program provides a comprehensive, annual service contract that covers all APL2000 products at use within the customers enterprise. It also provides a managed support relationship for customers who have made a significant investment in APL2000 technologies. Pricing varies by subscription level.
Over thirty years ago APL was developed by IBM, STSC and others, today APL+Win sets the stage for the next generation of software development. APL2000 Products.
APL+Win 7.0
Below is a description of new features and bug fixes in APL+Win 7.0
MOM
Name Trains
MOM
objects can now be referred to by a compound name of more than two parts.
For instance one.two.three
is now valid syntax for referencing a MOM object.
Œvr 'mom_name_train'
mom_name_train
[1] array„
¼10
[2] three„
Œmom 'array' ''
[3] three.array
[4] two„
Œmom 'three' ''
[5] two.three.array
[6] one„
Œmom 'two' ''
[7] one.two.three.array
mom_name_train
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
©
This is what occurred in previous version:
mom_name_train
1 2 3 4 5 6 7 8 9 10
SYNTAX ERROR
mom_name_train[5] two.three.array
^
Support for the Windows Recycle bin added to the )Drop
System Command
The Preferences dialog box contains a new check box labeled 'Use Recycle Bin on DROP'. Checking this option changes the )DROP command behavior to save the dropped Workspace in the Windows Recycle bin. The user will see a Recycle dialog box in the process. Leaving the box unchecked retains the old behavior of the )DROP command.
Note:This feature uses a Microsoft system DLL that is not supported in Windows Vista. Therefore, the 'Use Recycle Bin on DROP' check box is disabled in the Preferences dialog.
Bug Fixes
- The
]Rename
user command failed to rename a function when blanks were present immediately before or after the assignment arrow in the header. - The
FX
system function failed to create a function for a MOM Object System object when the header line in the function contained a quad-name followed by a (blank) space.
This is what occurred in the previous version:
)fns
vars
Œcr 'vars'
vars filter;Œpw ;a
foo„
Œmom '' ''
foo.Œfx Œcr 'vars'
1
WS NOT FOUND
message.
System Requirements for APL+Win Version 7.0
Requirements vary for different combinations of components within APL+Win Version 7.0. Review the table below to determine the minimum system requirements for running APL+Win Version 7.0.
Processor |
450-megahertz (MHz) Pentium II-class processor (600-MHz Pentium III-class processor recommended) |
---|---|
Operating System |
APL+Win Version 7.0 can be installed onto any of the following systems:
|
Memory |
|
Hard Disk |
50 MB of available space required on installation drive |
What's in APL+Win 6.4
Below is a description of new features included in APL+Win 6.4
- xPrintOptions Property (APL Grid)
WCALL 'W_Def'
WCALL 'W_Reset'
- Improvement to Recent Lines Dialog
- Resize Grip Added To Fetch Objects and Open Objects Dialogs
- Tooltipstyle Property for System Object
- Suppressing the "Unable to edit object" Message in onEditStart Handler
- Numeric Values with Full Precision (APL Grid)
- The xFormatMode Property (APL Grid)
- Improved Handling of Missing Values in APL Grid
- Bug Fixes
xPrintOptions Property (APL Grid)
The xPrintOptions
property enables the printing of header rows and columns in
APL Grid. You can set this property to 1 for column headers, 2 for row headers or 3 for
both column and row headers.
WCALL 'W_Def'
W_Def is used in the same way as W_Ini except that it lets you create WCALL definitions and other strings in your application that are stored into a local cache (memory) rather than written into the INI file.
These strings should also execute faster than W_Ini because no INI file reading or writing is involved. This permits setting WCALL definitions in a running application that might have a read-only INI file.
Note: These definitions are cleared with W_Reset.
The order of reading to access strings for WCALL used to be: Look in INI and if not found then look in
ADF (unless the [Config]IniFirst=1 is defined in INI file in which case ADF is accessed before INI). The
order of reading to access strings for WCALL always checks the W_Def cache first and then checks the INI
and ADF as before. You can get a list of all strings in a section by calling: WCALL 'W_Def' '[SectionName]'.
You can get a list of all strings in all sections by calling: WCALL 'W_Def' '[]'
When you reference a
string value with W_Ini it has historically never differentiated between strings defined in the INI file
versus those defined in ADF file. It returned the value found in either INI or ADF file.
WCALL 'W_Reset'
W_Reset is a built-in function that resets the WCALL sub-system. This is used to reset the WCALL definition bindings so they can be reloaded without restarting APL+Win.
Improvement to Recent Lines Dialog
In this version, the Recent Lines dialog box is non-modal, resizable and can be made to remain on top (via push-pin).
Resize Grip Added To Fetch Objects and Open Objects Dialogs
The Fetch Objects and Open Objects dialogs now have a resize grip in the lower right corner of the window.
Tooltipstyle Property for System Object
The purpose of the tooltipstyle
property is to control the behavior of a tooltip set for a control on a
Form. The tooltipstyle
property must be set before creating any controls on a
Form or MDIForm or else the setting might be ignored.
The default value for this property is 0. The settings currently available are:
- 1 = Always display tooltip when mouse is over the control regardless if the form is not activate.
- 2 = Suppress special handling of ampersands (&) in the tooltip property; without this value, a single ampersand will appear as an underscore in the tooltip.
- 64 = Display tooltip in a balloon style.
Suppressing the "Unable to edit object" Message in onEditStart Handler
Setting WRES[1]
set to ¯
1 in the onEditStart handler suppresses this message. This also restores the previous
cursor (rather than leaving the hourglass showing) when editing does not restart.
Numeric Values with Full Precision (APL Grid)
In version 5.0 of APL Grid, the xNumber property was updated to store full precision
numbers without being constrained by limits of text representation. But this precision
was not represented in XML data. This was addressed by adding the .hex. attribute to the
The xFormatMode Property (APL Grid)
The xFormatMode
property is used to control how currency values are formatted for
display in cells in the APL Grid.
Improved Handling of Missing Values in APL Grid
This enhancement was inspired by the old behavior of the grid which returned the
conversion error value (controlled by the xConversionErrorValue
property:
default = ¯
2147352572) when a cell containing a non-numeric value were referenced.
For example, if a cell had been edited to contain a value such as "abc" or "" and you
reference it with xNumber
property, it would return the conversion error value.
Users requested that they be able to store error values back into the grid by specifying a
numeric value matching the conversion error value. For example, if the conversion
error value was 999.999 and you used the xNumber
property to reference a cell
containing "abc" then the value 999.999 would be returned. They wanted to be able to
set the xNumber
property with 999.999 and have an error value stored back into the cell
in its place. However, since there is no way of knowing from the generic conversion
error value what string had actually caused conversion error it is impossible to replace
that string back into the grid.
For this reason it did not make sense to use the conversion error value as a signal for
storing some error marker back into the grid. Instead we introduced the concept of
"Missing Values" and introduced the xMissingValue
and xMissing
properties.
Bug Fixes
- Workspaces containing MOM objects with functions did not copy correctly in other workspaces.
- Selective assignment on arrays of MOM references or UCS data caused APL+Win to abort.
- Changing the
border
property reasserted the visible attribute for the Form that resulted in some visual anomalies. - ActiveX control objects did not repaint correctly after calling the
Paint
method on the object. - The six space indent in the session was not preserved when pasting copied text.
- When editing a variable beginning with
{delta-underbar} in the name, the
{delta-underbar} displayed as the floor primitive inWARG
in the onEditStart handler. - The APL Grid did not apply the proper formatting for cells containing currency values.
- The merged cell values were not stored in the
xml
andcontent
properties for the APL Grid object when the APL Grid object contained two or more header rows.
What's in APL+Win 6.2
Below is a description of new features included in APL+Win 6.2
- The Unique Primitive Function
- Printer Margins for the Session Manager
- The
)OUTPUT STRICT
Command Added WSELF
localization- Zip and Unzip in APL+Win
- The
FX
System Function for MOM Object System Objects - Bug Fixes
The Unique Primitive Function
Unique is a monadic function that selects the unique elements of a vector. Its result is a compression of its argument with all but the first instance of each distinct element removed. Unique is mapped to the ALT+V key.
Printer Margins for the Session Manager
When printing an APL+Win session or an Edit session from the Session Manager, you can now specify the margins to be used on the printed page via the Printer Margins settings in the Editor Options dialog. The margins can be specified in inches (default), points, or millimeters by following the number with the desired units; in, mm, and pt. The default margins are 0.75", 0.5", 0.75", and 0.5" for Left, Right, Top, and Bottom, respectively.
The )OUTPUT STRICT
Command Added
Like )OUTPUT ERROR
, this command also locates expressions that generate implicit output, but gives slightly
different behavior. The )OUTPUT ERROR
state may produce "IMPLICIT OUTPUT"
errors on some implicit output that is not visible. The )OUTPUT STRICT
command
produces errors only when visible implicit output is generated. In addition, this state
produces the "IMPLICIT OUTPUT" error message after the output has been generated,
so the effect of the output can be seen.
Note: All previous )OUTPUT
command behavior remains unchanged.
WSELF
localization
Delocalization of WSELF
to a non-existant GUI object now sets WSELF
to an empty vector instead of producing an error message.
Zip and Unzip in APL+Win
The Zip Class is an object programming model that provides facility for building
archives of files and extracting files from those archives. The Zip class provides an
interface to the Info-ZIP dynamic load libraries zip32.dll and unzip32static.dll. The Zip
class is manipulated with WI
.
For more information on Info-ZIP, see www.info-zip.org.
The FX
System Function for MOM Object System Objects
This works just like the ordinary FX
except that it defines the function inside the
referenced object. For example,
obj_ref „
MOM
'DLB' 'DEB' 'DTB' 'kind'
obj_ref.NL
2 3
DEB
DLB
DTB
obj_ref.CR
'DLB'
z „
DLB x
z „
(
/ x ¬
' ') \ x
obj_ref.FX
'z„
DAB x' 'z„
(z ¬
" ") / x'
DAB
obj_ref.NL
3
DAB
DEB
DLB
DTB
Bug Fixes
- APL+Win reported a System Failure referring to APLState.cpp and aborted.
- APL gave a LENGTH ERROR when the Draw method was used to get the size of an empty string. It now returns
0 0
. - The Tree control did not display its list when deleting multiple nodes with the
DeleteNodes
method where the nodes were in ascending order and contained nodes for a parent node and it's child node(s). This bug also caused the result from theDeleteNodes
method to be incorrect.
Copyright © 2024 APLNow LLC. All rights reserved.