J is not fully there yet I like the fact that

On Tue, Dec 8, 2009 at 10:03 PM, Roger Hui <[email protected]> wrote:
>> Here is a puzzle for mathematically-minded Jers.
>> What is the result of the following sentence?
>>
>>          +/ 2 ^ - i. _
>>
>> Don, note:  there is no J interpreter in the world that can
>> answer that question.
>
> You need to insert "(as yet)" between "there is" and
> "no J interpreter in the world than can answer that question".

J is not fully there yet but I like the fact that ^: works well in
many situations:

   a=:0
   (3 : 'y+2^(1+a=:a-1)') ^: _ ] 0
2

Can this be written cleanly and tacitly with no assignment and no nesting ^: ?

>
> http://www.jsoftware.com/pipermail/general/2005-December/026024.html
>
>
>
> ----- Original Message -----
> From: Dan Bron <[email protected]>
> Date: Tuesday, December 8, 2009 16:02
> Subject: [Jchat] Number Machines (moved from jgeneral)
> To: [email protected]
>
>> (Thread moved from General to Chat; all follow-ups here)
>>
>> Don,
>>
>> First, let me show you a parlor trick.  Here is a puzzle for
>> mathematically-minded Jers.  What is the result of the
>> following sentence?
>>
>>          +/ 2 ^ - i. _
>>
>> Don, note:  there is no J interpreter in the world that can
>> answer that
>> question.  So the only way for a Forum member to answer me
>> is to read the J
>> as a notation, and manipulate it, symbolically, in his
>> head.  If you want to
>> ask the same question via email, using your preferred 2D
>> notation, how do
>> you do it?
>>
>> Now, on to my thoughts on your message to Chris:
>>
>>    *  Why do you think math should be taught
>> using standard math
>>       notation (SMN)?
>>
>>    *  Many members of the J community are
>> mathematically-minded
>>       and take interest in teaching
>> math.  Several have used J
>>       with success in that
>> endeavor.  How?
>>
>>    *  SMN is not some holy, god-given language
>> for the expression
>>       of mathematical thoughts.
>> In fact, as John Randall is fond
>>       of pointing out, it is an
>> inconsistent agglutination of
>>       notation from recent centuries.
>>
>>    *  If teaching math is a way of promoting
>> rigorous, consistent
>>       thought, should we not use a
>> rigorous, consistent notation?
>>
>>    *  KEI, whom you admire, invented APL (and its
>> later dialect J)
>>       as a rationalized, simplified
>> revamping of (some parts of)
>>       SMN.
>>
>>    *  Can you really tell me that
>>
>>               2
>>             3x  + 9x + 27 = 0
>>
>>       is superior to (3 9 27 * x ^ 2 1
>> 0) or even (27 9 3 p. x)?
>>       And that {big sigma, iterator
>> declaration, bounds, indicies}
>>       And {big pi, iterator
>> declaration, bounds, indicies} are
>>       preferable to  +/
>> and  */  respectively?  If so, what do
>>       you prefer to
>> ^/   ?
>>
>>    *  Originally, APL was only a notation, but
>> because it was
>>       rationalized, it was amenable to
>> computerized execution;
>>       and so an interpreter was built
>> for it. The effect was
>>       that as the notation developed,
>> much attention was
>>       paid to maintaining and
>> increasing that amenability, with
>>       the results you see today.
>>
>>    *  In addition to being an executable
>> mathematical notation,
>>       APL is a programming language,
>> which IMO, is a
>>       generalization.
>>
>>    *  What advantages does SMN have over
>> APL?  Obviously, it
>>       is incumbent and widespread,
>> which is large hurdle to
>>       overcome (viz QWERTY).  But
>> if no one tries to overcome it,
>>       it will rule forever, warts and
>> all. Vive la revolucion!
>>
>>    *  Since you propose to teach math to children
>> who don't
>>       know math yet, we have a good
>> opportunity to change
>>       the notation.
>>
>> Now, the above is a bit tongue-in-cheek.  I do not see
>> APL/J as a
>> replacement for SMN.  Because it's not as general as SMN;
>> for example, J is
>> a numerical platform, not a symbolic platform, so SMN is much
>> more advanced
>> for symbolic manipulation.  Similarly, J is well defined on
>> ordered data;
>> lists and vectors and matrixes and such, and much less used for
>> unordereddata like sets.  Finally, J is a well-defined,
>> architected notation.  It is
>> not easily extensible for exploring new notation for still-fuzzy
>> concepts (a
>> whiteboard is infinitely more powerful here).
>>
>> So why don't we use J for what it's good for?  I can see it
>> being practical
>> and useful to teach arithmetic, algebra, trig, statistics, some
>> calculus,etc, but progressively less useful for higher maths,
>> particularly as they
>> become more abstract.
>>
>> -Dan
> ----------------------------------------------------------------------
> 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