>  In particular, could one make the 
>  workspace-interchange-file format work 
>  with J?

J's eschews binary formats by design.  So, unless you need ongoing 
communication between J and APL+Win, the best course would be, IMO, to calcuate 
your data from primary sources.  Whereever and however you acquired the 
information for the original APL components, recreate that logic in J.

If that's not possible, then I would convert your data once and store it in 
files which J can read natively. 

That leaves you two options:  ASCII script files, and binary jfiles.  Now, 
unless your data is very large and takes a long time to "calculate" (i.e. build 
using verbs on literal and numeric constants  0 : 0  ), I would use straight 
ASCII script files.

Script files are easier to manage:  read, understand, change, share, and 
version.  Their primary drawback is that they're hard to write.  That is,  
given an arbitrary J noun, it is difficult to produce an ASCII representation 
that has the above advantages (in particular, the "easy to understand" 
advantage). 

To my mind, the  5!:5  representation of a complex J structure has no 
advantages over the  3!:1  representation.  And it's not clear which is more 
future-proof (both the definitions of primitives and the internal 
representation of J nouns can and do change from one major version to the 
next). 

But, since you said your data has  3 > rank  and  0 = L.  the  5!:5  
representation should be just fine, maybe with a little help from  0 : 0  .

Having said all that:   the workspace-interchange-file format is just that: a 
format.  J is a Turing-complete programming language.  Any format readable and 
writable by another TCPL (in this case, APL+Win) is readable and writable by J. 
 All that's wanting is a couple of verbs.

Perhaps, if you point us at the specification for the 
workspace-interchange-file format, we can help you write those verbs.

-Dan

PS:  Another interesting data serialization format is YAML:  http://yaml.org  . 
 It's standardized, unambiguous, and is a good complement to J. Whereas J is a 
wonderful notation for describing operations upon data, YAML is good for 
describing the data itself.  

It's one of my goals to write a decent YAML library in J.  (I will break the 
spec a bit by extending YAML's prosaic constant notation to a subset of J's 
more expressive variety)
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to