Causeway->Products->CSharp translator

Introduction


Home
  About us
  Contact info
  Vector graphics
  SVG Fills & Filters
Products
  Price list
  CSharp translator
    User review
    Compiling APL
    Examples
    Limitations
    Seminars
  Dyalog
  APL2000
Support
  CUSP
  CausewayPro
  RainPro
  Newleaf
  Helpstuf
  Leafhtm
Tutorials
Demos
  Climate Charts
  VML graphics
  SVG examples
Free Stuff
  CSS Editor
Publications
  Seminars
  Articles
Causeway Graphical Systems
APL to CSharp Translator for Dyalog APL and APL+Win

Compiling APL is not a new idea (see Adrian's recent Vector article for more background reading) but the .Net framework just made it a lot more attractive. Here are some reasons why an APL shop might be interested:

  • Hotspot functions can be compiled down into fast, lightweight DLLs which you can call as easily as if they were still sitting in your workspace. With Dyalog 11 classes, this could happen in the background without you even knowing!
  • If you are a ‘closet APLer’ hidden in a big corporation coding new systems in VB.Net, then this could really make your day. What we can offer you is a library of array functions which run on all the native data-types and are fast and reliable. If you knew VS APL, you know these.
  • It could be an escape hatch for ‘legacy’ APL systems which are just too expensive (or complex) to rewrite. The generated C# code is well-structured and easy to read and modify. It is quite possible to make a one-off conversion to C# or and hand over the generated code to a programming team for integration and maintenance.
  • This is a real a chance to write that all-new killer-app in your favourite modern APL and ship it as a single-file EXE or DLL without giving away your APL source or bolting on any kind of runtime engine.

So is this a magic bullet to save your APL application at a stroke? No, there is plenty of work to be done to make your APL code truly compiler-friendly. Fortunately it is far from rocket-science and much of it can be automated if you have a consistent coding style.

What does it cost, and how do I try it?

You need to come to one of our 2-day seminars, which will cost you £1000. For this you get the array library, and an 18-month trial use of the code-conversion. We know the code-translation works for Adrian’s code (see the SharpPlot version of RainPro for the evidence) and for lots of code fragments APLers have sent us to check out, but we also know that there are plenty of APL habits that could leave it very confused.

The advantage of the seminar programme is that is gives us time to fix the translator, and it gives you a clear view of its benefits and limitations. The disadvantage is that we can only take 3-4 people at a time, and we don't have the energy to run very many of these, so if you want to get your hands on the technology, please sign up as soon as you can.

More Information

  • User review. A comprehensive review of the compiler by Walter Fil, submitted for publication in Vector
  • Compiling APL. Some background to the history of APL compilers. This should help you appreciate the design decisions we made along the way.
  • Examples. A few typical APL fragments (like the Monty Hall simulator from Vector 21.1) are put through the code-generation and debugged.
  • Main limitations. A summary of the main limitations of compilers in general, and this translator in particular.
  • Upcoming seminar schedule. Where we plan to be over the next few months, if you want to join us and try this for yourself.

Website maintained by adrian@causeway.co.uk
Telephone: +44 (0) 1439 788413