When you say Ruby is reflective, does this mainly refer to “duck typing”?
I was reading a text describing Ruby and it said the following: Ruby is considered a “reflective” language because it’s possible for a Ruby program to analyze itself (in terms of its make-up), make adjustments to the way it works, and even overwrite its own code with other code. I'm confused by this term 'reflective' - is this mainly talking about the way Ruby can look at a variable and figure out whether it's an Integer or a String (duck typing), e.g.: x = 3 x = "three" # Ruby reassigns x to a String type Class reopening is a good example of this. Here's a simple example: class Integer def