No, that's not what I am trying to say. Except for the total 
representation of J in ASCII symbols, J is similar in nature to APL in J 
sentences. J becomes a vastly different language only when it moves into 
tacit programming. This gives J a lot of power. Sticking to ASCII also adds 
all the ease of communication and makes J independent of the machines on 
which it is implemented. I don't believe there is any APL system implemented 
on so many operating systems. Since different schools use different 
operating systems, this independence and communication is of vital 
importance in teaching. J is also both free for educational use and a well 
supported, thoroughly professional, reliable system. To me this suggests 
that J is the base system of choice for experiential mathematics in 
education.

    However, one person on this forum remarked that he used both APL and J 
because they had different strengths. They were designed for different 
purposes. The advantages of APL include the fact that it is very easy to 
learn - which is of no interest to experienced J users - and thus more 
suitable for the educational applications in which I am interested. I am 
therefore looking for a way to marry the strengths of APL with the strengths 
of J. From what I have learned so far, this would be very easy to do and 
none of the J experts like those on this forum would ever have to use it or 
even know about it.

    Which raises the question of why I am talking on this forum to people 
who have no interest in what I am talking about. The answer is that one 
cannot deal with such things in isolation. Critics are essential to the 
process. Ric made the following comment: "I apologize in advance if my 
comments below seem to be rather negative but I hope, like me, you prefer 
negative feedback to none!" The more critical you are, the more helpful you 
are. You' be surprised how much help I have already received from this 
forum. All of it has encouraged rather than discouraged me and I am very 
grateful.

    You make one comment: "This can not be tacit because copula (=. =:) can 
not appear inside a tacit form." I have two points. One is that in the 
system variation that you would never see or use it should be possible to 
make changes that, while consistent with the principles of J, make something 
that is a rule of J not a rule in the system variation I seek. For example, 
one cannot insert J sentences in tacit programming. I want to do that. In 
the example I gave, I used curly brackets to do it - because there aren't 
any brackets left in the system. For the usage that you would never see or 
use, It would be possible to use some form of bracket to move from tacit 
programming to J sentences and back, just as (+/%#) moves from a J sentence 
to tacit programming and back. In which case the rule "This can not be tacit 
because copula (=. =:) can not appear inside a tacit form." does not apply 
and I can say:

                     SD =. { %:(%N) * +/ *: }  ( ] - (+/ % { N =. } #))

    However, I do not deny the truth of your statement: "I suggest you to 
forget APL for a moment and read introductory books such as "Programming in 
J" or "J premier". I think I understand the principles of J, but I am very 
short on the details.

    Don

----- Original Message ----- 
From: "bill lam" <[email protected]>
To: <[email protected]>
Sent: Sunday, March 15, 2009 12:24 AM
Subject: Re: [Jgeneral] Teaching


> On Sat, 14 Mar 2009, Don Watson wrote:
>> anyway. For example, the primitives "@" and "@." seem to be saying: "I 
>> want
>> to follow one verb with another. Since I'm in tacit programming, they 
>> will
>> be treated as a fork.
>
> This is incorrect. @ and @. are not fork. They are conjunctions.  The
> order of execution start from right to left. For fork, the middle
> token is also a verb ( v1 v2 v3 )_and order of execution of v1
> relative to v3 is undefined.
>
>>             SD =. { %:(%N) * +/ *: }  ( ] - (+/ % { N =. } #))
>
> This can not be tacit because copula (=. =:) can not appear inside a
> tacit form.
>
> I think that you are confused because you assume J is just APL with
> ascii symbol and your previous APL knowledge become a barrier for you
> to understand J.  I suggest you to forget APL for a moment and read
> introductory books such as "Programming in J" or "J premier".  No
> offense if it sounds like rtfm.
>
> -- 
> regards,
> ====================================================
> GPG key 1024D/4434BAB3 2008-08-24
> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> 唐詩132 孟浩然  早寒江上有懷
>    木落雁南渡  北風江上寒  我家襄水曲  遙隔楚雲端
>    鄉淚客中盡  孤帆天際看  迷津欲有問  平海夕漫漫
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm 

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to