[#351786] Splat array with 1 value in Ruby 1.9 vs Ruby 1.8 — Raul Parolari <raulparolari@...>

In porting some automation code from 1.8.7 to 1.9.1, I find that in ruby

16 messages 2009/12/01
[#351787] Re: Splat array with 1 value in Ruby 1.9 vs Ruby 1.8 — Raul Parolari <raulparolari@...> 2009/12/01

[ Sorry for the horrible indentation. I repeat the text renouncing to

[#351816] Re: Splat array with 1 value in Ruby 1.9 vs Ruby 1.8 — Rick DeNatale <rick.denatale@...> 2009/12/01

On Tue, Dec 1, 2009 at 12:53 AM, Raul Parolari <raulparolari@gmail.com> wro=

[#351818] Re: Splat array with 1 value in Ruby 1.9 vs Ruby 1.8 — Raul Parolari <raulparolari@...> 2009/12/01

Rick Denatale wrote:

[#351822] Re: Splat array with 1 value in Ruby 1.9 vs Ruby 1.8 — Robert Klemme <shortcutter@...> 2009/12/01

2009/12/1 Raul Parolari <raulparolari@gmail.com>:

[#351823] Re: Splat array with 1 value in Ruby 1.9 vs Ruby 1.8 — Raul Parolari <raulparolari@...> 2009/12/01

Robert Klemme wrote:

[#351878] Graphics mode — Teodor Carstea <teodorcarstea@...>

Hi all! I'm a beginner.

24 messages 2009/12/02

[#351881] duda sobre nuevo metodo — "David J,nas" <acidburg@...>

mi routers.rb es

18 messages 2009/12/02
[#351886] Re: duda sobre nuevo metodo — Rob Biedenharn <Rob@...> 2009/12/02

On Dec 2, 2009, at 10:18 AM, David J,nas wrote:

[#351894] Re: duda sobre nuevo metodo — "David J,nas" <acidburg@...> 2009/12/02

Rob Biedenharn wrote:

[#351900] Re: duda sobre nuevo metodo — Rob Biedenharn <Rob@...> 2009/12/02

On Dec 2, 2009, at 11:17 AM, David J,nas wrote:

[#351903] Re: duda sobre nuevo metodo — "David J,nas" <acidburg@...> 2009/12/02

esta solucionado gracias

[#351950] Encoding/decoding a image as Base64 (fails under Ruby1.9 but works under Ruby1.8) — Iñaki Baz Castillo <ibc@...>

Hi, the folowing code encodes and decodes a image file as Base64:

8 messages 2009/12/03

[#352043] Graphics mode again — Teodor Carstea <teodorcarstea@...>

>Hi, all! here is my prog: it calculates the trajectory of a cannon shell:

15 messages 2009/12/04

[#352051] gems installation - invalid gem format — Serguei Cambour <s.cambour@...>

No matter on which OS you are, - XP Family, XP Pro or Ubuntu 9.10. No

10 messages 2009/12/04

[#352101] how about ruby's threads? — Ruby Newbee <rubynewbee@...>

Hello,

19 messages 2009/12/05
[#352106] Re: how about ruby's threads? — David Masover <ninja@...> 2009/12/05

On Friday 04 December 2009 09:39:33 pm Ruby Newbee wrote:

[#352149] Re: how about ruby's threads? — Ruby Newbee <rubynewbee@...> 2009/12/06

Well, I asked this because Perl thread documentation warns that

[#352170] Re: how about ruby's threads? — David Masover <ninja@...> 2009/12/06

First, it's just a preference, but I think most on the list agree to me --

[#352190] Re: how about ruby's threads? — Brian Candler <b.candler@...> 2009/12/07

David Masover wrote:

[#352122] ruby 1.9 and collect — Raul Jara <raul.c.jara@...>

Under ruby 1.8.6, running

13 messages 2009/12/05

[#352138] Why doesn't Ruby "compile" strings? — Iñaki Baz Castillo <ibc@...>

Hi, the following code:

12 messages 2009/12/06

[#352150] IRB GUI on OSX? — Sophie <itsme213@...>

Is there a good GUI IRB on OSX? Preferably one that lets me easily

14 messages 2009/12/06

[#352192] Reading Images — Alexandro Kez <alexandro.mail@...>

Hei there, ruby coders,

14 messages 2009/12/07
[#352193] Re: Reading Images — Robert Klemme <shortcutter@...> 2009/12/07

2009/12/7 Alexandro Kez <alexandro.mail@gmail.com>

[#352206] Wordpress Port — hjast <hjast89@...>

Has there any been an effort to make a ruby Wordpress port? I am a

30 messages 2009/12/07

[#352220] convert string into a variable object — Ad Ad <codetest123@...>

Hi,

16 messages 2009/12/07
[#352221] Re: convert string into a variable object — Aldric Giacomoni <aldric@...> 2009/12/07

Ad Ad wrote:

[#352225] Re: convert string into a variable object — Ad Ad <codetest123@...> 2009/12/07

Aldric Giacomoni wrote:

[#352390] Mysql::Error: Data too long for column — "rabarama" <profpelosotoglimi@...>

Pleas i need help:

12 messages 2009/12/09

[#352459] human-readable listing of array elements — Aldric Giacomoni <aldric@...>

This took me less than a minute to write, but I don't know if it's as

22 messages 2009/12/10

[#352463] Re: Redirecting standard output — Roger Pack <rogerpack2005@...>

Omar Campos wrote:

17 messages 2009/12/10
[#352509] Re: Redirecting standard output — Omar Campos <hypermeister@...> 2009/12/11

Thanks, that's exactly what I was looking for! Nice gem by the way. I

[#352510] Re: Redirecting standard output — Robert Gleeson <rob@...> 2009/12/11

Omar Campos wrote:

[#352492] syntax issue — Sig Dx <sigbackup@...>

Hello guys,

17 messages 2009/12/10

[#352556] program: a small ball in a window — Teodor Carstea <teodorcarstea@...>

Please help, I realy need help!

11 messages 2009/12/11

[#352607] Is it possible to force a Ruby program to run as a proc name different than "ruby"? — Iñaki Baz Castillo <ibc@...>

Hi, I have a Python software called "py_program". It runs as daemon in Linu=

28 messages 2009/12/11
[#352612] Re: Is it possible to force a Ruby program to run as a proc name different than "ruby"? — David Masover <ninja@...> 2009/12/11

On Friday 11 December 2009 04:34:04 pm I=C3=B1aki Baz Castillo wrote:

[#352616] Re: Is it possible to force a Ruby program to run as a proc name different than "ruby"? — Iñaki Baz Castillo <ibc@...> 2009/12/11

El S=C3=A1bado, 12 de Diciembre de 2009, David Masover escribi=C3=B3:

[#352618] Re: Is it possible to force a Ruby program to run as a proc name different than "ruby"? — David Masover <ninja@...> 2009/12/12

On Friday 11 December 2009 05:33:06 pm I=C3=B1aki Baz Castillo wrote:

[#352631] Re: Is it possible to force a Ruby program to run as a proc name different than "ruby"? — Iñaki Baz Castillo <ibc@...> 2009/12/12

El S=C3=A1bado, 12 de Diciembre de 2009, David Masover escribi=C3=B3:

[#352641] Re: Is it possible to force a Ruby program to run as a proc name different than "ruby"? — Brian Candler <b.candler@...> 2009/12/12

I単aki Baz Castillo wrote:

[#352642] Re: Is it possible to force a Ruby program to run as a proc name different than "ruby"? — Brian Candler <b.candler@...> 2009/12/12

Brian Candler wrote:

[#352647] Re: Is it possible to force a Ruby program to run as a proc name different than "ruby"? — Iñaki Baz Castillo <ibc@...> 2009/12/12

El S=C3=A1bado, 12 de Diciembre de 2009, Brian Candler escribi=C3=B3:

[#352653] How to make a ruby program tu run unser other user:group different than root — Iñaki Baz Castillo <ibc@...>

Hi, many daemons allow an argument "-u uid" which makes the program to run=

12 messages 2009/12/12

[#352694] Code block for element comparison in an array? — Derek Cannon <novellterminator@...>

I'm new to Ruby and I can't think of how to do this! I would like each

14 messages 2009/12/13

[#352736] Poll: Significant Indentation — David Masover <ninja@...>

I've just re-read the "Beating a Dead Horse" thread. I will bring that up

30 messages 2009/12/13

[#352922] Using threads to show progress — Aldric Giacomoni <aldric@...>

I want to do this in a Rake task, but the concept is Ruby. I would like

22 messages 2009/12/15
[#352925] Re: Using threads to show progress — Aldric Giacomoni <aldric@...> 2009/12/15

Aldric Giacomoni wrote:

[#352941] Re: Using threads to show progress — David Masover <ninja@...> 2009/12/16

On Tuesday 15 December 2009 01:53:21 pm Aldric Giacomoni wrote:

[#352943] Re: Using threads to show progress — Piyush Ranjan <piyush.pr@...> 2009/12/16

How about using a queue ?

[#353056] Encapsulating Information and Behavior without State — Intransition <transfire@...>

This should prove an interesting topic. I am currently debating two

9 messages 2009/12/17

[#353070] How to fund an open-source project? — Eleanor McHugh <eleanor@...>

In the recent thread on Ruby VMs I mentioned my newly launched =

23 messages 2009/12/17
[#353071] Re: How to fund an open-source project? — Gregory Brown <gregory.t.brown@...> 2009/12/17

On Thu, Dec 17, 2009 at 6:19 PM, Eleanor McHugh

[#353233] Re: How to fund an open-source project? — Eleanor McHugh <eleanor@...> 2009/12/20

On 17 Dec 2009, at 23:28, Gregory Brown wrote:

[#353258] Re: How to fund an open-source project? — Robert Klemme <shortcutter@...> 2009/12/20

On 20.12.2009 02:28, Eleanor McHugh wrote:

[#353088] Suggestion of Array#=== which improves case/when behaviour — Dmitry Vazhov <dmitryelastic@...>

Hello,

19 messages 2009/12/18
[#353090] Re: Suggestion of Array#=== which improves case/when behavio — Dmitry Vazhov <dmitryelastic@...> 2009/12/18

"Set" class has meaning close to "Range" class. If we will define

[#353173] Re: Suggestion of Array#=== which improves case/when behavio — Caleb Clausen <vikkous@...> 2009/12/18

> Dmitry Vazhov wrote:

[#353198] Re: Suggestion of Array#=== which improves case/when behavio — Tony Arcieri <tony@...> 2009/12/19

I would absolutely love if Array recursively performed #=== on its

[#353200] Re: Suggestion of Array#=== which improves case/when behavio — "David A. Black" <dblack@...> 2009/12/19

Hi --

[#353089] Math errors — jzakiya <jzakiya@...>

(-3)**3 => -27

19 messages 2009/12/18

[#353151] Question about sum of fibonacci sequene [PROJECT EULER] — Panagiotis Atmatzidis <atma@...>

-----BEGIN PGP SIGNED MESSAGE-----

10 messages 2009/12/18

[#353319] Help with gem ruby mysql error — Andrew Ting <drikting@...>

Hi,

11 messages 2009/12/21

[#353322] Ruby's implementation of Fixnum-assignment — RichardOnRails <RichardDummyMailbox58407@...>

Hi,

19 messages 2009/12/21

[#353339] promiscuous mode — Marco Biscetti <bisciasia@...>

Hi guys. i have a question. i am new in a ruby world.

13 messages 2009/12/21

[#353353] Strange behavior of unary +@ for Fixnum? — Alexandre Mutel <alexandre_mutel@...>

It seems that it's not possible to use the unary +@ operator for Fixnum

14 messages 2009/12/21

[#353357] Symbols vs. constants? — Sonja Elen Kisa <sonja@...>

How are symbols and constant (capitalized) strings similar or

35 messages 2009/12/22
[#353359] Re: Symbols vs. constants? — Gennady Bystritsky <Gennady.Bystritsky@...> 2009/12/22

Constants are variables that can be assigned to any object (only once). Whi=

[#353360] Re: Symbols vs. constants? — "Young H." <armywide@...> 2009/12/22

On Tue, Dec 22, 2009 at 9:07 AM, Gennady Bystritsky

[#353396] integers and floats — Rajinder Yadav <devguy.ca@...>

Can someone explain to me why Ruby treats integers and floating point

16 messages 2009/12/22
[#353398] Re: integers and floats — Paul Smith <paul@...> 2009/12/22

On Tue, Dec 22, 2009 at 1:01 PM, Rajinder Yadav <devguy.ca@gmail.com> wrote:

[#353402] newbie: if is not null else... — Alfonso Caponi <alfonso.caponi@...>

Hi forum,

16 messages 2009/12/22

[#353453] Suggestions for a distributed job queue — Tony Arcieri <tony@...>

I'm looking at replacing our homebrew job queue with something better, and

15 messages 2009/12/22
[#353457] Re: Suggestions for a distributed job queue — "Walton Hoops" <walton@...> 2009/12/22

> -----Original Message-----

[#353477] Trig value errors — jzakiya <jzakiya@...>

Hardware: 32-bit Intel P4 cpu

58 messages 2009/12/23

[#353482] awk print $4 in ruby — Derek Smith <derekbellnersmith@...>

Hi All,

17 messages 2009/12/23

[#353690] pasing data between 2 win XP boxes via internet — Dave Lilley <dglnz2@...>

Hi folks,

23 messages 2009/12/26

[#353733] How to truncate the spaces in the front of a line — Milo Luo <lxybhbh@...>

Hi, guys

13 messages 2009/12/27
[#353735] Re: How to truncate the spaces in the front of a line — Phillip Gawlowski <pg@...> 2009/12/27

On 27.12.2009 04:22, Milo Luo wrote:

[#353739] building ruby from source — Rajinder Yadav <devguy.ca@...>

I removed my older ruby package from my ubuntu, built ruby from source

14 messages 2009/12/27

[#353823] au3 0.1.1 released — Marvin Gülker <sutniuq@...>

au3 0.1.1 has been released. au3 is a library that allows you to

23 messages 2009/12/28
[#353837] Re: [ANN] au3 0.1.1 released — Roger Pack <rogerpack2005@...> 2009/12/28

Marvin G端lker wrote:

[#353842] Re: [ANN] au3 0.1.1 released — Marvin Gülker <sutniuq@...> 2009/12/28

Roger Pack wrote:

[#353877] Re: [ANN] au3 0.1.1 released — Edward Middleton <emiddleton@...> 2009/12/29

Marvin G端lker wrote:

[#353909] Re: au3 0.1.1 released — Marvin Gülker <sutniuq@...> 2009/12/29

Edward Middleton wrote:

[#353854] Creating my own method for sorting an array — Joe User <gctaylor2004-rubyforum@...>

Hi,

12 messages 2009/12/28

[#353856] ? about Search in google,com and Show Result — Saji Jaooon <seyyedsajjad1363@...>

hi every body

13 messages 2009/12/28

[#353872] A Ruby appliance: What would you include? — Phillip Gawlowski <pg@...>

Hello, list!

37 messages 2009/12/29
[#353923] Re: A Ruby appliance: What would you include? — Aldric Giacomoni <aldric@...> 2009/12/29

Phillip Gawlowski wrote:

[#353933] Re: A Ruby appliance: What would you include? — Phillip Gawlowski <pg@...> 2009/12/29

On 29.12.2009 14:25, Aldric Giacomoni wrote:

[#353957] Re: A Ruby appliance: What would you include? — Marnen Laibow-Koser <marnen@...> 2009/12/29

Aldric Giacomoni wrote:

[#353962] Re: A Ruby appliance: What would you include? — Phillip Gawlowski <pg@...> 2009/12/29

On 29.12.2009 17:51, Marnen Laibow-Koser wrote:

[#353878] Using #include at the instance level? — Intransition <transfire@...>

I would like to use #include at an instance level, such that it

22 messages 2009/12/29
[#353901] Re: Using #include at the instance level? — Robert Klemme <shortcutter@...> 2009/12/29

2009/12/29 Intransition <transfire@gmail.com>:

[#353927] Re: Using #include at the instance level? — Intransition <transfire@...> 2009/12/29

[#353935] Re: Using #include at the instance level? — Robert Klemme <shortcutter@...> 2009/12/29

2009/12/29 Intransition <transfire@gmail.com>:

[#353955] Re: Using #include at the instance level? — Intransition <transfire@...> 2009/12/29

[#353961] Re: Using #include at the instance level? — Robert Klemme <shortcutter@...> 2009/12/29

2009/12/29 Intransition <transfire@gmail.com>:

[#353992] Re: Using #include at the instance level? — Intransition <transfire@...> 2009/12/29

[#353880] PLEASE HELP...dup is not working correctly in the following code — timr <timrandg@...>

#dup creates a copy of an object with a different object_id. As

10 messages 2009/12/29

[#354040] How to pass a function as parameter? — Fritz Trapper <ajfrenzel@...>

I want to pass a reference to function as parameter to another function

15 messages 2009/12/30
[#354042] Re: How to pass a function as parameter? — Jes俍 Gabriel y Gal疣 <jgabrielygalan@...> 2009/12/30

On Wed, Dec 30, 2009 at 12:42 PM, Fritz Trapper <ajfrenzel@web.de> wrote:

[#354077] Where to find a description of yaml for ruby? — Fritz Trapper <ajfrenzel@...>

Where to find a description of yaml for ruby?

12 messages 2009/12/30

[#354081] Test::unit assertion pass scenario — John Smith <ks1911shooter@...>

When using the test::unit assertion, such as assert_equal, the script

13 messages 2009/12/30

[#354098] Why can't I use "or" here? — Albert Schlef <albertschlef@...>

(The problem is in both Ruby 1.8 and Ruby 1.9)

41 messages 2009/12/31
[#354106] Re: Why can't I use "or" here? — botp <botpena@...> 2009/12/31

On Thu, Dec 31, 2009 at 10:24 AM, Albert Schlef <albertschlef@gmail.com> wrote:

[#354114] Re: Why can't I use "or" here? — Albert Schlef <albertschlef@...> 2009/12/31

botp wrote:

[#354162] Automated testing of visual library (ncurses) — "(rkumar) Sentinel" <sentinel.2001@...>

As i work more on a ncurses widget library, I am wondering how does one

10 messages 2009/12/31

[#354187] Delete elements in array, break, and keep changes? — Joe Buck <semle2000@...>

I have an array of a lot elements that I need to cluster (they are

12 messages 2009/12/31

Re: Correcting complex math

From: jzakiya <jzakiya@...>
Date: 2009-12-21 20:05:12 UTC
List: ruby-talk #353341
On Dec 20, 1:05=A0pm, jzakiya <jzak...@gmail.com> wrote:
> On Dec 20, 9:51 am, Colin Bartlett <colin...@googlemail.com> wrote:
>
> > If this can be made to work, it might be useful.
> > Two thoughts that occur to me are:
>
> > 1. The code you show would probably need to use Rational(?),
> > =A0 =A0otherwise 1/n (or 1.0/n) may not be what one thinks it is.
>
> From a mathematical/engineering perspective it is
> understood that a root n is a positive integer > 1.
> In other words, what number 'r' multiplied by itself
> n times equals 'x'.
>
> A coding implementation can do the requisite checks on
> all the inputs and raise needed exceptions/warnings.
>
> Of course from an arithmetic perspective (a)^(1/n) can
> take any value of n (integer, float, complex) but if
> n not a positive integer (or interizable) number > 1
> then the discussion here may not apply to those cases.
>
> I think the syntax of (a)^(n^-1) vs (a)^(1/n) makes the
> point more mathematical clearer that what you are doing
> is finding the nth root of 'a' vs raising 'a' to a
> fractional power.
>
> > 2. What would one do with a number (Float or Rational)
> > =A0 =A0which is arbitrarily close to 1/n but which is not 1/n?
>
> If a number can be expressed as rational n =3D b/c then 'c' would be the
> root, and 'b' would be the power and
> (a)^b^(c^-1), otherwise see comment above.
>
>
>
> > I'd also like to take the opportunity of this thread
> > to suggest removing (!) something from Complex,
> > unless anyone can make a good case for retaining it:
>
> > require "complex"
> > n =3D -2 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0#=3D> -2
> > p =3D 1 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 #=3D> 1
> > cn =3D Complex( n, 0 ) =A0#=3D> Complex(-2, 0)
> > cp =3D Complex( p, 0 ) =A0#=3D> Complex(1, 0)
> > n > p =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 #=3D> false
> > cn > p =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0#=3D> true
> > cn > cp =A0 =A0 =A0 =A0 =A0 =A0 =A0 #=3D> true
>
> > The Complex numbers are not an "ordered field",
> > at least not in any normally useful sense.
>
> > At the moment if either x or y is Complex
> > then =A0x <=3D> y =A0is calculated as =A0x.abs <=3D> y.abs;
>
> > # File complex.rb, line 312
> > =A0 def <=3D> (other)
> > =A0 =A0 self.abs <=3D> other.abs
> > =A0 end
>
> > I think that can be misleading (see the examples above),
> > and I would prefer it if "<=3D>" and "<", etc,
> > were *not* defined for Complex,
> > and if one wants to compare absolute values
> > then one should do so explicitly.
>
> I would agree that <, >, are ambiguous. It's not just
> a matter of magnitude size but also angular 'size',
>
> Remember, complex variables are really vectors with
> magnitude and direction (angle).
>
> Take the example of a ferris wheel ride. Where you
> get on it is angular distance zero from your start.
> Once the ride starts, it will eventually be rotating at
> some constant speed, with changing angular direction.
>
> However, the max angular distance from the start with be
> when you are at the top of the ferris wheel, which is an
> angular distance of PI (180) degrees from your start. All
> other locations have CCP angular distance from the start.
>
> Thus, any complex number is defined with polar rep of
> |mag(a)| /_ angle(a)
>
> Therefore, to find all the n roots of real values, I can
> change my original code to make it more efficient and
> flexible by making it just find the magnitude and angles
> of the root locations.
>
> def Complex.root(a,n,k)
> =A0 angle =3D (2*k+1)*PI/n =A0 =A0# for 'a' real negative
> =A0 angle +=3D PI/n if a > 0 =A0# for 'a' real positive
> =A0 mag =3D a.abs**n**-1
> =A0 # The kth root of (a)**n**-1
> =A0 mag*Complex(cos(angle),sin(angle))
> end
>
> The key is to find the appropriate angle rotation for
> 'a' positive or negative. Now by finding that angle
> and mag values, all the numeric classes can be written
> to find all the roots of real values with easy syntax.
>
> In Integer/Float you could now do:
>
> a.root(n) # default to +/- real root or first CCP
> a.root(n,k) # kth ccw root
> a.roots(n) # array of all (ccw) roots
>
> To make it intuitive (and follow Matz's POLS) let k
> roots go from 1st to kth, k =3D 1..n, which means that
> the routine that uses k just needs to subtract 1 from
> it before computing the angle.
>
> These features can be integrated within all the other
> numeric classes/modules as appropriate.

Example implementation for class Integer.
Output can be prettyfied if desired, but it's a start.

class Integer
  require 'complex'
  include Math

  def root(n,k=3D0) # k=3D1..n, k=3D0 default root
    return 'Invalid root: n not > 0' if n < 1
    return self if n =3D=3D 1
    return 0 if self =3D=3D 0
    mag =3D self.abs**n**-1
    if k=3D=3D0  # return default roots
      return mag if self > 0
      return -1*mag if (n & 1) =3D=3D 1 # n odd
      return mag*Complex(cos(PI/n),sin(PI/n))
    end

    # return kth root if root value
    k -=3D 1 # translate k =3D 1..n to k =3D 0..(n-1)
    angle =3D (2*k+1)*PI/n       # self negative
    angle +=3D PI/n if self > 0  # self positive
    mag*Complex(cos(angle),sin(angle))
  end

  def roots(n)
    return 'Invalid root: n not > 0' if n < 1
    return self if n =3D=3D 1
    return 0 if self =3D=3D 0
    mag =3D self.abs**n**-1
    roots =3D [] ; theta =3D PI/n
    n.times do |k|
      angle=3D(2*k+1)*theta         # for neg integer
      angle +=3D theta if self > 0  # for pos integer
      roots << mag*Complex(cos(angle), sin(angle))
    end
    return roots
  end
end

In This Thread