On Wed, Dec 9, 2009 at 9:14 AM, Thomas Costigliola <[email protected]> wrote:
> 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 ^: ?
>
(-:@{. ([,+) {:)^:_ ] 1 1
0 2
A little better but I still want the left arg to power to be shorter
or at least more clear.
>>
>> 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