(отредактированный ответ для нового кода в вопросе)
Вы должны быть в состоянии реализовать это с простым наследованием.
class Foo
def m1
puts "method 1"
end
# ...
def m7
puts "method 7"
end
end
class Bar < Foo
end
class Baz < Foo
end
bar = Bar.new
bar.m1 # method 1
baz = Baz.new
baz.m1 # method 1
Вы также можете создать модуль Foo и использовать миксин.
Вторая часть может быть обработана с первоначальным ответом:
puts "what would you like to know?"
answer = gets.chomp
case answer
when "Tof.etiology"
Tof.etiology
when "Tof.othermethod"
Tof.othermethod
end