Current J documentation follows a reference / tutorial split. Reference materials need to be concise.
Perhaps, though, it would be worthwhile recreating the reference content as wiki pages, and then allowing mutation from there? I think we had a previous effort to do something like that, but it withered and died before getting anywhere. -- Raul On Sun, May 19, 2013 at 1:50 AM, Linda Alvord <[email protected]> wrote: > I think you missed my point. > > In the vocabulary in "Control Structures" you provide hints to formulate this: > > if. y<0 do. c elseif. y>:0 do. d end. > > A beginner who finds this is likely to assume that this is the best way to > provide a conditional solution in J. > > Sadly, they are likely to work to master the use of this structure. A better > way is not there for them to see. I'm suggesting that a better way (or the > best known option at the current time) be provided right there. > > c*y<0)+(d*y>:0) > > Often these better ways appear on wiki pages. They are only brought to light > by some link on the forum which would otherwise never be found. > > If gems like this one were to appear in the vocabulary section it would > encourage faster development of good writing skills. > > So much of the give and take of the forum reduces concepts to a simpler way > of solving problems. It would be great if those "better ways" could find > their way into the vocabulary. > > Linda > > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of Roger Hui > Sent: Saturday, May 18, 2013 7:03 PM > To: Programming forum > Subject: Re: [Jprogramming] newbie help: how to avoid division by zero > > We don't do anyone any favors by providin > if. y<0 do. c elseif. y>:0 do. d end. > instead of > c*y<0)+(d*y>:0) > > > For one thing, the former has to work scalar-by-scalar, and for now and for > the forseeable future it'll be orders of magnitude slower that the latter > expression. > >> There are many places where newer and better ways of doing things >> could > be added to save lots of new users many pitfalls. > > Yes, we have newer and better ways of doing things; it's called array > thinking, and booleans returning 0 and 1 instead of false and true, and ... > > > > On Sat, May 18, 2013 at 1:41 PM, Linda Alvord <[email protected]>wrote: > >> try=: 3 : 0 >> c=:12 >> d=:14 >> if. c*y<0 do. c elseif. d*y>:0 do. d end. >> ) >> try _3 >> 12 >> try 0 >> 14 >> try 3 >> 14 >> >> c=:12 >> d=:14 >> y=:_3 >> (c*y<0)+(d*y>:0) >> 12 >> x=:0 >> (c*y<0)+(d*y>:0) >> 12 >> x=:3 >> (c*y<0)+(d*y>:0) >> 12 >> >> Roger, Most people seem to go first to the vocabulary to find a >> starting place to solve their problems. >> >> Wouldn't it be useful to go to "Control Structures" to find a major >> improvement such as the one you just wrote: >> >> if. c*y<0 do. c elseif. d*y>:0 do. d end. >> or: >> (c*y<0)+(d*y>:0) >> >> There are many places where newer and better ways of doing things >> could be added to save lots of new users many pitfalls. >> >> Linda >> > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
