Определение и инициализация

Структуры (записи)

Point  = Struct.new(:x, :y)

p1 = Point.new(1, 2) 
puts "p1 is (#{p1.x}, #{p1.y})"

p2 = Point.new() 
puts "p2 is (#{p2.x}, #{p2.y})"

require "ostruct"

p3 = OpenStruct.new
p3.x = 1
p3.y = 3
puts "p3 is (#{p3.x}, #{p3.y})"