An attempt to create DSL for 3 modeling in Ruby