On 1/5/07, Gregory Brown <gregory.t.brown / gmail.com> wrote:

> Have you considered Ruport?
>

Should have included an example.

>> table = Table("foo.csv",:csv_options => { :col_sep => ";" })
>> class Ruport::Data::Record
>>   def name
>>     "#{first_name} #{last_name}"
>>   end
>> end
=> nil
>> table.map { |r| r.name }
=> ["peter pan", "joe loop"]