Structures (records)

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

p1 = Point.new(12
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})"