Thanks for your comments, Raul and Don. My name is Bruno and I just joined your mailing list.
> It's trivial to uncompress J tokens (add spaces between tokens). To read and > quickly comprehend an expression in J or any language requires practice. > Why do all programming classes teach people how to write a programming > language? Shouldn't they also teach people how to read the language? Germans > have no problems with looooong words, but I can't read it. Chinese and > Japanese have no problems with a token representing an entire word or > concept. Why? They have practiced reading for years. How many people > practice reading a programming language? They just complain that the program > isn't well documented with comments. And they slug their way through it, > eventually they comprehend the program. > > Personally I get overwhelmed with all the parentheses in Lisp. But I'm sure > if I practiced reading Lisp it would not be a problem. One doesn't > comprehend the implications of Maxwell's equations in a glance, no matter > what the notation. > For information about J forums see http://www.jsoftware.com/forums.htm I respect your experience very much and I agree with you that it's possible to recognize the words of a J programm pretty fast after some training -- whether there are spaces or not. What bothers me is rather that I'll probably never be able to see the _valence_ of the verbs (and thus its unambiguous meaning) fast, because for this one has to count the verbs: In a verb train with an even number of members (counting the verbs joined by conjunctions as one), you have a hook and all verbs at odd positions (counting from the right beginning with 1) are used monadically and the other ones dyadically. In a verb train with an odd number of members you must look for the presence of a noun expression on the left. If there is one, you now that all the verbs are used dyadically, otherwise they are all nomads. It gets more complicated with dyadic & and the like. All this has to be done recursively on conjunction expressions and verbs enclosed in parentheses. I will be slow in reading such expressions and the complexity of an expression that will be understandable without using paper and pencil will be limited. So I propose the spaces not for recognizing the words but for being able to disambiguate the words and still use symbols for them. The 7-bit ASCII character set just isn't enough for doing mathematics, even if you use dot and colon suffixes. I'm fascinated by Mr. Iverson's "Language as a Tool of Thought" and many ideas he had and I really want to use some variant of his languages as a mathematical notation. But with the valence ambiguities still present I fear that I rather will be slowed down in finding a mathematical proof or a solution to an equation. Being able to grasp an equation at a single glance is important for doing mathematics and I think it was Iverson's dream that one day, we'll be able to recognize and transform computer programs in the same easy way as we're doing algebra and calculus at high school. Best regards Bruno Daniel ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
