Metaprogramming adalah menulis kode yang menulis atau memodifikasi kode saat runtime — mendefinisikan method secara dinamis, merespons method yang tidak terdefinisi, dan menginspeksi/mengubah kelas dengan cepat. Sifat dinamis Ruby (semuanya adalah objek, termasuk kelas) membuatnya luar biasa baik dalam metaprogramming, yang mendukung banyak "magic" Rails.
Mendefinisikan method secara dinamis
[, , ].each ||
(attribute)
instance_variable_get()
() ||
instance_variable_set(, value)
