I'm not an expert, but your question I can answer. Woohoo!

You can create instances with new(). E.g., given your code as shown:

    aMotorCycle = Motorcycle.new("blahblah", "800 pounds")

This invokes your 'init' method.

But you're trying to do something a little trickier, which is (I think)
to create many motorcycles at once. You can do that with a class method
that returns an array of motorcycles:

   def Motorcycle.getMany(filename)
      File.new(filename).readlines.map{ |line|
         Motorcycle.new( line.split( '.' )  )
      }
   end

This could be invoked thus:

   manyMotorcycles = Motorcycle.getMany('motorcycles.csv')

(There are a few more improvements you could make to your code but I
won't clutter this answer with them.)

Good luck, and have fun with Ruby!

ps: I stumbled on your question while checking for an answer to my Rake
question: http://www.ruby-forum.com/topic/3130799#new
No answers yet. Anyone with Rake chops out there? Hello?

-- 
Posted via http://www.ruby-forum.com/.