Introduction to Metaprogramming

Metaprogramming lets your code write or modify code at runtime. Ruby is powerful in this area.

send Method:

class Person
  def greet
    puts "Hello!"
  end
end

p = Person.new
p.send(:greet)

Define Methods Dynamically:

class Robot
  define_method(:dance) do
    puts "Dancing!"
  end
end

Robot.new.dance

Used in frameworks like Rails to dynamically define behavior.

← PrevNext →