APL2000

APL+Win Version 7.2

Introducing APL+Win Version 7.2. 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.

What's New in APL+Win 7.2

APL+Win 7.2 represents the continuing support by APL2000 for the APL application development language on the Microsoft Windows operating system platform.

Localization level specific referencing

A number of system functions were enhanced to provide the ability to reference functions and variables at specified localization levels. This is particularly useful for writing utility functions such as UCMDs. Such utility functions can now see globals (or values at other localization levels between local and global). This means such functions no longer have to play tricks with special names (such as  prefixed names) to attempt to avoid shadowing issues. They can now just reach out and access shadowed values directly.

As a result of this change, an optional numeric left argument that specifies the scope at which names are interpreted was added to the following system functions:

In addition, there is a new system function: ŒVGET. This system function is used to access variable values at local or global scope. ŒVGET allows you to peek at variable values around the edge of localizations.

New "APL2000 Home Page" option in the Help menu

The "APL2000 Home Page" option when clicked launches your Internet browser to the APL2000 web site.

The CodeWalker Pause menu and Toolbar button are now active during function execution

The CodeWalker Pause menu and toolbar button are now always available (not just when the CodeWalker window is open) during function execution. The Ctrl+Shift+Break keyboard shortcut key has also been added to the CodeWalker Pause menu.

New error message when editing ŒNA system function

When editing a ŒNA system function, the new error message reported is Cannot edit associated function instead of Cannot edit locked function.

Major overhaul and refactoring of how tooltips work in APL GUI objects

This release has a major overhaul and refactoring of how tooltips work in APL GUI objects. The following bugs were fixed and features added:

New sessions property (System Object)

The sessions property was added to the system object to detect under program control changes in the session manager editor window.

New CloseDoc and OpenDoc methods (Printer Object)

The Printer object has always prematurely opened the document causing the printer icon to appear in the system tray even before any output is actually written to the printer. This means you cannot open a printer for reference purposes only (such as for print preview) without having that icon appear. In addition when you click on the icon it shows a document named "No Document Name" in progress even though nothing has yet been drawn to the printer. But more problematic is the fact that printing to print-to-file drivers (such as PDF drivers) causes the user to be prompted to enter a filename. This last undesirable behavior can be suppressed on some print-to-file drivers (such as the Adobe Distiller) by setting the caption property to "" on the Create/New method line when creating the printer object (before the implicit Open operation can take place). The new OpenDoc and CloseDoc methods were added to the Printer object to address these issues.

New FormatMessage method (System object)

The FormatMessage method on the system object allows formatting of error codes into message strings. This can be used to decode any standard error message number (such as returned by the GetLastError Windows function) including the error property for the Printer object.

New error property (Printer Object)

The error property on the Printer object is used to detect printing errors. If an error occurs during or after the print operation, the error property will have a non-zero value.

APL Grid Printing Enhanced

Methods, properties and events were added or changed to allow better control when printing or print previewing the APL Grid.

New Methods: XVirtualLoad
New properties: xMargin, xPrintBorderThickness, xPrintGridlineCadence, xPrintScaleString
Changed Properties: xPrintOptions
Changed Events: onXVirtualLoad

Select multiple rows and column headers with the mouse

You can select multiple row and column headers by clicking and dragging the mouse pointer across them.

The onXEditCancel and onXEditComplete events fire for combo cell in the APL Grid

The onXEditCancel and onXEditComplete events now fire when editing is cancelled or completed, respectively, in the drop-down list for a combo cell.

The XPrintMetrics method accepts a list of page numbers in the APL Grid

The XPrintMetrics method now accepts a list of page numbers and returns an array of (row column) ranges corresponding to each page.

The maximum number of columns in APL Grid increased to 2147483647

The maximum number of columns in APL Grid has increased from 32000 to 2147483647.

New XEnsureVisible method (APL Grid)

The XEnsureVisible method, when invoked, ensures that a cell is visible in the APL Grid

EnsureVisible option added to xActiveCell property (APL Grid)

Updated the xActiveCell property with the EnsureVisible option.

New xDragCell property (APL Grid)

The xDragCell property specifies the last cell in a selection in the APL Grid.

Bug Fixes

Interpreter
Session
APL GUI
APL Grid

System Requirements for APL+Win Version 7.2

Requirements vary for different combinations of components within APL+Win Version 7.2. Review the table below to determine the minimum system requirements for running APL+Win Version 7.2.

Processor 450-megahertz (MHz) Pentium II-class processor
(600-MHz Pentium III-class processor recommended)
Operating System APL+Win Version 7.2 can be installed onto any of the following systems:
  • Windows Vista
  • Windows Server 2003
  • Windows XP
  • Windows 2000
Memory
  • Windows Vista: 1 GB of RAM
  • Windows Server 2003: 512 MB of RAM
  • Windows XP: 512 MB of RAM
  • Windows 2000: 512 MB of RAM
Hard Disk 62 MB of available space required on installation drive


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


What's in APL+Win 6.4

Below is a description of new features included in APL+Win 6.4

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 element that stores the numeric value as a hex string if it differs from the formatted value. This is in addition to the "raw" attribute when the formatted representation and/or raw attribute do not accurately represent the full precision of the data.

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



What's in APL+Win 6.2

Below is a description of new features included in APL+Win 6.2

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

Privacy Policy