rubikitch wrote:
>From: "John Cusick" <jcusickc / home.com>

>> so what key piece of information did I miss in order to make this work?
>You must define the "Song#initialize" method.
>The Song.new method calls the Song#initialize with three arguments.
>So the following code will work fine.

For better or worse, the examples in the pickaxe 
book are not self-contained. Rather than 
repeating the code over and over, they just add 
in each new bit. You need the stuff from back on 
p. 19.

>
>class Song
>  def initialize(name, artist, duration)
>    @name, @artist, @duration = name, artist, duration
>  end
>  attr_reader :name, :artist, :duration
>end

In this case, Ruby does not automatically build a 
constructor (initialize) for you just because you 
have some attributes.

Kevin