> From: Don Watson <[email protected]>>
> Hi Oleg,
>
> I will take up your references and respond, but initially I would like
> to respond to your initial comments:
>
> "I see a problem here: S tries design a new notation for
> the same complex apparatus of tacit definition. The complexity
> is intrinsic, and there is hardly a way to reduce it with a
> different notation. It just makes it more confusing.
>
> There is just no way that tacit definition in any form is
> going to be readily perceivable for beginners."
>
> Where I disagree is with the statement that "The complexity is
> intrinsic, . ." Tacit programming is only complex because it has been
> given a different structure to explicit J. Make the basic structure
> consistent
> with explicit J and it is easy to make tacit programming readily perceivable
> for beginners.
Hi Don,
We need to be careful about using the term "tacit" appropriately. Does it
only mean the use of "@", and S thus attempts to replace it with " "?
However tacit is much more than that: the whole repertoire of
adverbs and conjunctions, and the forks and hooks--that is tacit.
The order of complexity can hardly be denied. One has to grasp the total
entirety of tacit programming in J. It is not just about one conjunction "@",
which has its proper place and meaning and cannot be just thrown away.
How does S represent the rank difference between "@" and "@:" ?
With "@" being space, how is it going to be related with the other
facets of function composition "&", "&.", "&:" and "&.:" ?
It takes people years just to get more or less comfortable both with tacit
programming and the notation, which are tightly inter-related.
The design evolved throughout the decades, not just years. In its current
form it makes a complete and clear system. And it ain't broke.
Regards,
Oleg
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm