While searching for some information on polymorphism, I came across another
language comparison: Jim Weirich's site at

  http://w3.one.net/~jweirich/oostuff/

Chris Rathman has contributed a Ruby version of this simple circle/rectangle
shape polymorphism example.  However, Chris's code does not appear to take advantage
of the succinctness that Ruby allows.  For example Chris's base class, Shape.rb,

class Shape
  attr :x
  attr :y
  # constructor
  def initialize(initx, inity)
    setX(initx)
    setY(inity)
  end
  # get the x & y components for the object
  def getX
     return @x
  end
  def getY
    return @y
  end
  # set the x & y components for the object
  def setX(newx)
    @x = newx
  end
  def setY(newy)
    @y = newy
  end
  # move the x & y position of the object
  def moveTo(newx, newy)
    setX(newx)
    setY(newy)
  end
  def rMoveTo(newx, newy)
    moveTo(newx + getX, newy + getY)
  end
end

It seems that this class is at least twice as long as it should be?  Also, as
Dave and /\ndy suggest, it should also include a "cultural" unit test.

-- 
bil <http://abweb.larc.nasa.gov/~kleb/>