Subject: [J-learn] New development in J

From: Arthur Anger <[email-masked]>
Date: Sun, 08 Aug 2010 21:54:49 -0400

Friends--
Surprise!  You're still on the J-Learn mailing list.  There hasn't been a class
for over a year, and I haven't gotten inquiries to reply to, so there hasn't
been any mail traffic on it.

If you now have no interest in J, you should find unsubscription instructions in
this message's headers--if you display the full set.

I have developed a program to spread out a J statement to show what order the
various steps are performed in, and where intermediate results go.  If you have
mostly given up on J because you didn't understand its syntax very well, or
couldn't  make important statements work the way you had hoped, this tool may
help you get back into it.

Even if you don't expect to use much J, you might be interested in picturing
problematic statements in your other programs in such a data-flow way.  Here
are examples:

NB. Cross products of vector pair v0,: v1

   flowtree '((1: |. {.)* (_1: |. {:))- ((_1: |. {.)* (1: |. {:)) v0,: v1'

                            v0  v1
                             ?,:??
?                              ?
????F???F???F???F????F???F??F???
  1: {.  _1: {:   _1: {.  1: {:
   ????   ?????    ?????   ????
   |.      |.       |.     |.
    ?????????        ????????
        *               *
        ?????????????????
                -
                ?

NB. Manipulation of 3-D point pairs representing segments of a curve

   flowtree 'Ptsegs=: > , <"1 (0 3+"0 1 i. 6){"2 1 ] 2,\ (] , {.) Ptsegs'

                             Ptsegs
                                ?
                           ??F???
                 6          ] {.
                 ?       2  ?,??
            0 3 i.       ?? ??
             ?? ?? ???????????
             ????? ? , ??? \ ?
       ???????0 1? ????? ?????
       ? + ???"? ?         ?
       ????? ?????         ]
               ?????? ??????
                   ?????
             ???????2 1?
             ? { ???"? ?
             ????? ?????
                     ?
                  ?????
            ???????  1?
            ? < ??? "??
            ????? ?????
                    ?
                    ,
                    ?
Ptsegs              >
   ??????????????????
          =:
           ?

Full details are at:  http://www.jsoftware.com/jwiki/ArtAnger/FlowTree

--Art Anger