> > > Btw, there is another variant for switching between 
> single and double
> > > quotes: you can use a global variable.  This has the 
> advantage that
> > > you do not need to touch any #inspect implementation of 
> custom classes
> > > - but comes at a price of course.
> >
> > Hmmmmm.... here I don't see the point.
> 
> Global variables are generally considered bad OO and you should
> normally try to avoid them if possible.

You got me wrong here: I wanted to say that I don't see how globals
would help me here.

> > In my case, I use pretty_inspect to "marshal" Ruby data types (they
> > are written to a file, which is then edited by the user, and finally
> > eval'ed by another Ruby application). I use pretty_inspect to easily
> > format Ruby structures (arrays...), but for the user, it is more
> > convenient
> > to use single quoted strings when editing the data, because he needs
> > to care less about escaping rules.
> 
> The proper way to do this would of course be a decent parser because
> eval has serious security implications. 

Yes, security implications for instance. The user could arbitrarily ruin
anything by inserting suitable statements. Only that in *this* case,
security is a non-issue, but time to invest in the implementation is
one. If I define the file format as "Ruby code", parsing is trivial,
as it is done by Ruby; and creating the file is also trivial, using
pretty_inspect.

Ronald
-- 
Ronald Fischer <ronald.fischer / venyon.com>
Phone: +49-89-452133-162