From: "Matthias Wächter" Date: 2011-09-09T17:43:01+09:00 Subject: Re: Executing the output of a loop On 09.09.2011 05:32, Marc Heiler wrote: >> This is almost certainly the wrong design, as local variables >> aren't really supposed to be used in this way. > > It does not matter how they are "supposed" to be used. > > Ruby does not impose it on him. > > eval() is a perfectly legit way to solve the problem description he has > given. > > There is no "evil user input" at all. > > eval() works and can be used without thinking that it is the wrong > choice for the given problem. It would be better to move from t1, t2, … t12 to an array t[1..12] (or t[0..11]) and then use each on that. While legit, eval shows a bad design underneath that should be fixed instead. – Matthias