These are not bugs.  3r1 and 3x are not "demoted" to facilitate
incorporating extended precision numbers into the language.



On Fri, Aug 19, 2016 at 8:42 PM, bill lam <[email protected]> wrote:

> Actually rational 3r1 does not demoted to integer after parsing,
>    3r1
> 3
>    3!:0[3r1
> 64
>
> Similarly for extended integer
>    3x
> 3
>    3!:0[ 3x
> 64
>
>
> Perhaps this is a bug but I cannot be sure.
>
> Пт, 19 авг 2016, dhkelly написал(а):
> > Handling 3r1 or 3j0   as being different than 3  does add complexity to
> the
> > J interpreter
> > without adding anything worth while in the essentially mathematical
> > representation. as 3r1 and 3j0 ARE the integer 3 in any sense.
> Representing
> > either differently requires wasting of memory space and associated
> overhead.
> > Working with complex numbers is simply recognizing that real numbers are
> > along the real (call it x ) axis and the j0 is not needed.
> > Much of the advantage of J and APL   are that if a number is sufficiently
> > close to an integer -treat it as such and let the idiot box sort it out.
> > Put it this way, would you like to carry this to the extreme and
> represent
> > all numbers in the same format (3j0)r(1j0) and God help us where floats
> are
> > concerned.
> > As Bob has suggested - the use of +.  does the job of getting from 1j0
> to 1
> > 0 as it also does for getting from 1 to 1 0 (+.1 is 1 0 correctly).
> >
> > The set of real numbers and real fractions (either as rational or
> float)  is
> > simply a subset of the set of complex numbers - a "complex"  number of
> 1jo
> > is the real number 1
> >
> > In other words, the mathematical use of complex numbers or rational
> > fractions in  J is elegant. Expressing numbers such as 3r1 or 3j0 as
> > formatted character pairs (3,1) .(3,0)
> > appears to be of little use but I would like to see applications where
> this
> > is needed.
> >
> > Don Kelly
> >
> >
> >
> >
> >
> >
> >
> >
> > On 8/19/2016 7:11 AM, robert therriault wrote:
> > > Bill,
> > >
> > > If you extended this idea to rationals so that 3r1 displayed as 3r1
> instead of 3 then you would have a way to distinguish rational and extended
> types from integers.
> > >
> > > This could be done with floats as well, so that by including the
> decimal point and the right 0, you could immediately see that 1.0 was a
> float result and was different from the integer 1.
> > >
> > > Unicode and literal would still be a challenge to differentiate using
> text alone, but being able to clearly differentiate the numerical types
> through text display may be something to think about.
> > >
> > > Cheers, bob
> > >
> > > > On Aug 19, 2016, at 12:58 AM, bill lam <[email protected]> wrote:
> > > >
> > > > If you can take away the if(v->im) check, it then always displays
> > > > both real and imaginary parts. Not sure this should be done but
> > > > it looks harmless.
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
>
> --
> regards,
> ====================================================
> GPG key 1024D/4434BAB3 2008-08-24
> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3
> ----------------------------------------------------------------------
> 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