(moved from Chat forum thread "the things i dislike most about J")
Spaces are necessary whenever (1) a different name would be formed in the absence of space, or (2) when the spaces are part of literal data (e.g. quoted text.) The easy part of the need for spacing is between textual names. I suspect you don't have difficulty knowing that you need at least one space between two defined names, or between numbers in a vector. The harder part is when they are needed when primaries/primitives adjoin. Spaces are needed between primaries only when dot (.) and colon(:) occur, and then only when the absence of space would mean that a different word is formed. (That's the same reason we put spaces between alphanumeric names and numbers.) In practice this is pretty easy because the only primaries that can cause this problem are the few that begin with either dot or colon. You can find these six in the Vocabulary. For simplicity, you can adopt the rule that a space should always be put in front of any of these six primaries. Personally, I found it a lot harder to learn when to use parentheses, but I've certainly been jabbed by the spacing issue. In my most recent such error I wanted to snuggle Obverse (::) up against the parenthesized phrase to its left. No can do! Tracy On Thu, Jan 28, 2010 at 2:02 AM, DIETER ENSSLEN <[email protected]> wrote: > thanks > > re > > 4. looking at a line it is not always obvious to me whether there is a > space that matters or not > > sorry, i have to experiment the hard and long way > > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
