Current issue

Vol.26 No.4

Vol.26 No.4


© 1984-2024
British APL Association
All rights reserved.

Archive articles posted online on request: ask the archivist.


Volume 21, No.2

ml version="1.0" encoding="utf-8"?> Sustaining Members' News | Vector 21.2

Sustaining Members’ News

Causeway Graphical Systems

Turning RainPro into SharpPlot has taken almost exactly 18 months, during which time we have had very little time or energy to do anything else. By choosing to keep development in APL, but ship as fully-managed (compiled) C# we took a considerable risk – as far as I know there have been no commercially successful compiler projects since the early days of STSC back in 1979. However, all’s well that ends well and is out there for all to see. We now have a graphics engine that is fast, lightweight and fits all the requirements of a top-quality .Net component. Great for Causeway, but why should the APL world care?

It occurs to me that we may not be alone in wanting to ship APL-authored components to .Net customers! I also remember the time when APLers cared enough about speed to buy the STSC compiler (not cheap in those days) just to get a few bottleneck functions coded down into assembler. Maybe there is someone else out there who could use this stuff? What could we offer to the APL world?

  • a lightweight library of APL primitives, hand-coded in C# and callable from any .Net language (such as C# or VB.Net). These implement the ISO-standard for first-generation APL and as much ‘nested’ stuff as we have needed so far. This is well-tested, well-documented and very reliable. Guide-price £1,000 per developer with site-wide deployment £5,000. Royalty-free runtimes, as always.
  • a bunch of functions (implemented in both APL2000 and Dyalog APL) which take your APL source-code and generate one or more C# source-files which can be compiled into a DLL or a stand-alone application. This code is constantly evolving (see any recent backchat on the DFns newgroup), falls over in a huge heap at the slightest provocation, and issues amusing error messages like FUNCTION ABUSE at things it doesn’t like. Seriously, it is not all that bad, but no way is it a product we could sell.
  • a lot of expertise. Between us, we reckon we could look at an APL application and within a day, give a reliable estimate on what would need to be done to get it through the compiler hoops. We targeted C#, but there would be no problem in creating source in, Java, or even ANSI C if those were the language standards in your organisation.

Which leaves me thinking that the best way forward is probably a short seminar (say 2 days) which is both a technology preview and a workshop. My aim would be to assemble enough people to give the converter a serious workout, nail the more egregious bugs by teatime on the last day, and hand over a time-limited version to all the participants.

This way, you get to see the tool in action before you try it for yourself. I appreciate that this is not Causeway’s usual approach, but I am really scared of the support cost of simply handing out trial copies. Did anyone watch Raiders of the Lost Ark (for the fourteenth time) the other night? Just think of as a very dangerous box, and you will see why I want to make sure you know enough of the right words before you lift the lid!

Causeway Graphical Systems Ltd

script began 11:55:36
caching off
debug mode off
cache time 3600 sec
indmtime not found in cache
cached index is fresh
recompiling index.xml
index compiled in 0.1801 secs
read index
read issues/index.xml
identified 26 volumes, 101 issues
array (
  'id' => '10014210',
regenerated static HTML
article source is 'HTML'
source file encoding is 'UTF-8'
URL: ../../paper.css => trad/v212/../../paper.css
URL: =>
URL: =>
completed in 0.2079 secs