From: Trans Date: 2005-12-10T06:42:49+09:00 Subject: Re: different methods for initializing one object? You can also define alternate constructors: class Point2D class << self def new_xy( x, y ) new.set_xy( x, y ) end def new_rt( r, t ) new.set_rt( r, t ) end end def set_xy( x, y ) @x, @y = x, y end def set_rt( r, t ) @r, @t = r, t end end p = Point2D.new_xy( x, y ) p = Point2D.new_rt( R, theta ) T.