Thanks for that. The dictionary has been amended to read: Any negative sign is placed just before the leading digit. If w>:0 and d>:0, the result is right-justified in the space. Otherwise (if w<0 or d<0), the result is put in exponential form (with one digit before the decimal point) and is left-justified and aligned on the decimal point.
----- Original Message ----- From: Tom Arneson <t...@tomarneson.com> Date: Friday, March 12, 2010 2:42 Subject: Re: [Jprogramming] Bug in printf utility To: 'Programming forum' <programming@jsoftware.com> > > --- copied from the vocabulary page for ": --- > > Any negative sign is placed just before the leading digit. If > w>:0 and d>:0, > the result is right-justified in the space. Otherwise (if w<0 > or d<0), the > result is put in exponential form (with one digit before the > decimal point) > and is left-justified except for two fixed spaces on the left > (including one > or a possible negative sign). > > --- end copy --- > > I believe that Henry is saying, that: > > 0j_3": 3.14 > 3.140e0 > 0j_3": _3.14 > _3.140e0 > > Doesn't have two fixed spaces on the left, so the implementation > and the > documentation disagree. > > If the implementation is correct, and I believe it is, then the > documentation should change. > > Tom Arneson > > -----Original Message----- > From: programming-boun...@jsoftware.com > [mailto:programming-boun...@jsoftware.com] On Behalf Of Roger Hui > Sent: Thursday, March 11, 2010 23:41 > To: Programming forum > Subject: Re: [Jprogramming] Bug in printf utility > > You can blame J primitives for problems in your application > if you want, but if the J implementation does the same > regarding errors in C compilers, the number of errors > in the implementation would be legend. > > I don't remember what exactly are your complaints > with ":, but at least one item was an extension that you > argued should be there but which I declined to implement. > > > > ----- Original Message ----- > From: Henry Rich <henryhr...@nc.rr.com> > Date: Sunday, March 7, 2010 17:01 > Subject: Re: [Jprogramming] Bug in printf utility > To: Programming forum <programming@jsoftware.com> > > > The problem with fixing it is that ": in J6.01 and later does > > not > > conform to the Dictionary. I don't want to change printf > > until the > > Dictionary and the implementation agree (or there has been a > > pronouncement on which one is incorrect). > > > > Henry Rich > > > > Tom Arneson wrote: > > > This is my second try to get the 'e' format fixed in printf. > > > > > > > > > > > > Here's the problem: > > > > > > > > > > > > NB. ---------------------------------- > > > > > > JVERSION > > > > > > Installer: j602a_win.exe > > > > > > Engine: j602/2008-03-03/16:45 > > > > > > Library: 6.02.050 > > > > > > > > > > > > Load 'printf' > > > > > > > > > > > > '%0.4e' sprintf 3.14 > > > > > > .1400e0 > > > > > > > > > > > > '%0.4e' sprintf _3.14 > > > > > > 3.1400e0 > > > > > > > > > > > > '%0.4g' sprintf 3.14%1e6 > > > > > > .1400e-6 > > > > > > > > > > > > NB. The first digit of a scientific format is dropped. > > > > > > > > > > > > NB. ------ end J ---------------------------- > > > > > > > > > > > > This utility must not be used by many, and I've switched to > > the 8!: family > > > for most of my formatting, but it is in the main folder, and > > should work > > > properly, or be removed from the J distribution. ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm