Something in Ruby
#!/usr/bin/env ruby String.class_eval { define_method(:translate_to) do |lang| text = case lang when :spanish "Buenos Dias, Como estas hoy?" when :english "Good Morning, How are you today?" else "I don't speak any other language." end end } puts "Sentence".translate_to :spanish # => Prints out "Buenos Dias, Como estas hoy?" puts "Sentence".translate_to :english # => Prints out "Good Morning, How are you today?" puts "Setenece".translate_to :portuguese # => Prints out "I don't speak any other language." puts "Sentence" # => Prints out "Sentence"
So while messing round I made this in Ruby… I’m not sure if it is considered meta programming? Well, it’s just adding a method to the String class. I get confused when to consider things to be meta programming.. Maybe I over think about it.
June 30th, 2008 at 12:34 am
kool