From: RichardOnRails Date: 2009-07-29T06:25:21+09:00 Subject: Re: Unexpected output in a metaprogramming application On Jul 28, 10:32 am, Gregory Brown wrote: > On Mon, Jul 27, 2009 at 11:15 PM, > > RichardOnRails wrote: > > Hi,, > > > I putting together examples I might use in teaching an elementary Ruby > > seminar.  for the moment, I like to code examples inside a method that > > displays both the code and the result of the code's execution. > > > I pasted both the code and the output presented by running the code > > under SciTE athttp://www.pastie.org/561156. > > > My problem is the spurious final line of output from the show method: > > "1256921" from Example 4.  I like to learn why that's generated so > > that I can eliminate it.  I repeated the Example 4 code out of the > > "show" context,  and it executed as I expected, i.e. no "1256921" ws > > generated. > > this is because the return value of your eval() code is the last > statement executed, which is Array#each > > >> [1,2,3].each { }.to_s > > => "123" Hi Gregory, Many thanks for your perfect response. I apologize to you and this newsgroup for being so obtuse. Now that you point out the my error, it seems so obvious. Isn't that always the case when the blind have their eyesight restored. :-) BTW, I love this technique for demoing code because it avoids the pitfall of having the code disagree with output because of a typo. Best wishes, Richard