Kent Dahl wrote:
> Looking at the Tk source code, it appears atleast it uses a Ruby
> extension to do so.
> In tkutil.c a toplevel definition of 'new' which sends any block into
> instance_eval without having to deal with the shackles that our
> pure-Ruby instance_eval enforces (no Procs).

Ok, the rest of my message turns out to be hogwash, since I got confused
by the combination by a & missing on my part and the following error
message:
 in `instance_eval': wrong argument type Proc (expected String)
(TypeError)

Now this might just be me being an idiot (or sleepy), but I'll try to
voice a CFD on a potential RCR. 

Since instance_eval may take a block, would it make sense to change the
above error message to something like:
 in `instance_eval': wrong argument type Proc (expected String or block)
(TypeError)
for those one-character typing errors? This would also fit the rest of
the *_eval family of methods that take blocks.

Pro:
+ The interface to the method is more clearly expressed in the error
message.

Con:
- Eval is evil so any obfuscating helps protect the young ones while
securing job security for the old ones.

-- 
(\[ Kent Dahl ]/)_    _~_    _____[ http://www.pvv.org/~kentda/ ]_____/~
 ))\_student_/((  \__d L b__/ (pre-) Master of Science in Technology  )
( \__\_/__/ ) _)Industrial economics and technological management(
 \____/_\____/ (____engineering.discipline_=_Computer::Technology___)