--- 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


----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to