Metaprogramowanie , definiowanie metod z argumentami

Powiedzmy ,że mamy klasę :

class Alphabet
(‘a’…‘z’).each do |letter|
(class << self; self; end).class_eval do
define_method letter do
letter
end
end
end
end ( Źródło http://www.apohllo.pl/dydaktyka/ruby/intro/metaprogramowanie)

W jaki sposób zadeklarować methodę letter z argumentami tak , aby można było zrobić coś takiego:

a = Alphabet.new
puts a.k(5)

define_method letter do |arg| end
:slight_smile: