From Martin Maechler <maechler@stat.math.ethz.ch>  Tue Apr  8 09:43:55 1997
From: Martin Maechler <maechler@stat.math.ethz.ch> (Martin Maechler)
Date: Tue, 8 Apr 97 10:43:55 +0200
Subject: R-alpha: Seg.faults with complex: factor(..), unique(..).  Missing feature ``sort( complex(..) )''
Message-ID: <9704080843.AA01399@>

1) Several functions still (0.50 - pre6)
   give seg.faults when called with complex:

unique( 1i)  --> segfault
In 'factor', levels are defaulted to  'sort(unique(x))'
which seg.faults  factor( 1i).

Because of 'factor', table(..complex..)  seg.faults,.....


2)  sort ( complex )   [[Of course this is minor ..]]

You may not believe this can be useful, but...
I've been digging in old S-code  which makes use of this (and also of unique(.))

Be  
	z = x + 1i*y;   x,y real vectors
Then,  
	order(z)   : <-->  order(x,y)

This is how it is defined in S (but it is implemented via .Internal(..)).

One could add the following line to the definition of 'sort'

	if(is.complex(x)) return( x[order(Re(x),Im(x))] )

which has the drawback of NOT using the 'partial' and  'na.last' arguments.
((This actually makes me think that
  maybe  'order' should also accept these two)).
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-devel-request@stat.math.ethz.ch
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


R-alpha: Seg.faults with complex: factor(..), unique(..). Missing feature ``sort( complex(..) )''
Martin Maechler