Hi Ric,

    I can see that we are starting to agree. For example, you state:

    "I think that in reality once they got through the front door and
started walking around, they'd pretty quickly gravitate towards
the current symbol set".

    I would agree with that - at least for people like you. I would,
perhaps rephrase your statement: "A nice facade that doesn't put
first-time viewers off " by saying that:

     "The purpose of replacing any two character symbols with one
symbol is to enable new users and school students to
more easily see the relationship between book Mathematics
and executable Mathematics.".

    I don't think the work of implementing this would be that large.
It is not worth replacing every two character verb with one
symbol - just those that would serve the purpose above.

    We have to remember that everyone is not the same as you are.
I would expect users to graduate to using the two character
symbols in J at their own pace. At the extremes, some would do it
very quickly and some might stay with the single symbols indefinitely
______________________________________________________

You state:

"I think it would also be nice (continuing with the house selling metaphor)
to give all the documentation a new coat of paint in a more up-to-date
color. In my opinion it currently looks dated, both in terms of visual
appearance and underlying structure. . . . I also totally agree that it
would be great to have a separate document that was be more
appropriate for that purpose [for schoolteachers]."

    I want to be very clear in stating that I am not criticizing the present
documentation - much of it is very well written. I am only stating that its
target audience is a small group of sophisticated users. If J were to be
targeted to a new audience, a different set of documentation would
be needed
________________________________________________

You state:

"My advice would be not to confuse your target audience with tacit to start
with (whether it is J's version of tacit or yours)."

    I would agree with that statement, but comment that all existing J
documentation gets to tacit quickly. There is minimal documentation on
explicit J.
_________________________________________________________
    TO THIS POINT WE SEEM TO AGREE
__________________________________________________________

    You state:

"As I see it the only
thing stopping you from going down that route at the moment is that you
don't like the syntax of:

  myverb=: verb def '(x + y) - (x * y)'

I think you'll have much less resistance to the above than to this below:

  myverb=: (([) + (])) - ([) *      NB. I think this is the equivalent in
your tacit notation?!?"

    Tacit programming is central to what J is. The ASCII
keyboard and tacit programming seem to me to be the two most
fundamental and central additions that J has over the APL that I knew
- I do not know what has been added to APL since. I am not prepared
to use J without the equivalent of tacit programming.

    Every Computer language has Computer Science
business trappings like: verb def ' ' . They don't belong in Mathematics.

    Actually the relevant notation would be:

            myverb=: (([) +) - ([) *

    The right argument is automatically brought in to the left of a right
parenthesis - except when a left argument is indicated and, of course,
to the right of the last verb. I have 11 characters in my definition.
You have 20. And if we are talking elegance, a fundament objective of
Mathematics, I would argue that mine is more elegant than yours.

    How would you put this expression in tacit J ?
_______________________________________________________

        Don

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

Reply via email to