The plug-ins listed below are all experimental and have reached differing levels of completion. Some are nearly ready to go and some of them are still in the early design stages. I am trying to prioritize them so I can best serve the APL community. If you are interested in any of these plug-ins, please let me know. I'd like to discuss their planned features so I can be sure I fulfill your needs.
I'm working on these plug-ins:
Calls to APL2 from Java includes the following Java classes: Apl2interp, Apl2object, Apl2exception, and Apl2cdr. These classes provide a low-level interface to APL2 from Java. I'm working on a high level set of classes that will make it easier to call functions. They will manage the details of associating the functions, preparing arguments, calling the functions, freeing intermediate results, and converting results to Java's data types.
I can have a first draft of this plug-in ready without much more work. If you would like to be an alpha tester, please let me know.
APL2 includes facilities for writing auxiliary processors in APL2 and C. These facilities are interfaces to the APL2 Shared Variable Processor (SVP).
This plug-in will include a set of Java classes that provide access to the SVP. These classes will enable customers (and me) to write platform-independent auxiliary processors. (See the next two ideas)
The session managers are currently written in C and are platform dependent. Most of the features of the session manager on Windows are not available on UNIX systems.
Using a Java interface to the SVP, I plan to write a new session manager that will run on all workstation systems.
AP 145 is currently written in C and only runs on Windows. APL2 only provides very rudimentary facilities for developing GUI applications on UNIX systems.
Using the Java interface to the SVP, I plan to write a new version of AP 145 in Java that will run on all workstation systems.
I currently plan to only write a simplified version of AP 145. If you are interested in this plug-in and want a full featured version of AP 145, please let me know.
AP 207 was designed long, long ago back when DOS was the typical PC operating system, displays were low resolution and supported only a few colors, there were few if any graphic file formats (like JPEGs and GIFs), and there were no 3D graphic libraries. It was terrific in its day, but it's pretty old fashioned today.
I plan to write a new graphic processor that will support modern fonts, RGB colors, graphic files, 3D graphic libraries, more flexible coordinate systems, and batch operation for use by web servers. Using a Java interface to the SVP, I could even make it be platform independent.
The Windows 7 explorer supports preview panes, an area on the right side of the explorer that shows the contents of the currently selected file. I could write a preview handler that let you view the contents of saved workspaces and transfer files in the preview pane.
Although this is kind of a cool idea, it will be a fairly difficult project. I do not plan to work on it unless customers express a lot of interest in it. So, if you're interested, please let me know.
In May 2011, IBM made available the following APAR for mainframe APL2:
PM34280: CALLS TO APL2 WILL NOT INITIALIZE WHEN TSO IS NOT PRESENT.
This APAR enables APL2 to be called from the z/OS UNIX shell. Theoretically this means that it should now be possible to call mainframe APL2 from Java.
I believe I could build an interface from Java to mainframe APL2 that works exactly like the interface from Java to Worsktation APL2. The only difference would be that I could not provide Associated Processor 14 and so callbacks to Java from APL2 would not be supported.
With an interface from Java to mainframe APL2, it should be possible to call APL2 from WebSphere Application Server (WAS) running in the z/OS UNIX shell. Hence, APL2 applications could be deployed using the same modern tools as applications written in other languages,
I have proved that APL2 can be called from the z/OS UNIX shell. However, I do not yet know for sure it can be called from Java and WebSphere. I am trying to get access to a z/OS system to run some experiments. However, getting access to z/OS requires quite a lot of work for an individual like me. So, I am not trying very hard to get it done. If you're interested, please let me know and I will try harder.
If you are interested in any of these plug-ins, please let me know.
Thank you.
Back to Plug-Ins