Sunday, September 21, 2014

Pipelines on TSO

Today for the first time the open sourced Pipelines processor for NetRexx ran on TSO. After NetRexx 3.03 did not run on OMVS at all due to codepage problems, and after the integrated Pipelines suffered from a JVM bytecode mismatch problem, I have incorporated the Pipelines build into the Ant build for NetRexx and finally have bytecode for JVM 1.5 for the Pipelines classes. So with pleasure I announce the first VM/CMS compatible version of Pipelines for NetRexx running on MVS/TSO. In a few moments I am going to run it on real iron (my employer's EC12) to get an impression of its performance. After some work on the manual it is going to be released together with NetRexx 3.04.

Sunday, August 31, 2014

NetRexx Pipelines

I am working on integration of Pipelines (by Ed Tomlinson and Jeff Hennick) with the NetRexx translator for release 3.04, that will be available somewhere in September 2014. Prompted by fairly unrelated thoughts about Java 8's lambda's and the pipelines on collections classes made possible by those, I remembered how closely Rexx is to Pipes on VM/CMS (as is my conclusion based on lots of stories) I was looking into a way of making the use of a pipeline as straightforward as possible. In an earlier stage (no pun intended) I had repackaged the njpipes package into using the org.netrexx.njpipes hierarchy (where previous releases used pipes. and stages. packages) and was not entirely happy with the visual distraction the elaboration of the package names (to adhere to the package naming conventions) introduced; while an the other hand feedback from early adapters of the njpipes package indicated that using CLASSPATH and successfully installing the package was still problematic, undoubtedly because people trying the pipelines would be more proficient with Rexx than with Java. The solution seems to be to integrate the package with the NetRexx translation archive itself, making sure there is not import needed to use a pipeline. The pipes compiler compiles a NetRexx source file which includes a pipe specification to a .class file - even if it contains no NetRexx but only a pipe - or a number of pipes. At the moment everything works and the test cases work. I am working on the manual and try to get it into a shape that I can send to John Hartmann, who earlier on promised to write a short introduction. When it all works, it will also be the first time an open source package will provide a pipes implementation for z/OS TSO.