* Mathieu Bouchard (Mar 15, 2005 19:50):
> On Tue, 15 Mar 2005, Nikolai Weibull wrote:
> >  Another nice property is that as one abstracts away the
> >  pointer-to-char, ropes can be created lazily from IO or other
> >  generators of data.  As an example, say that we want a String of
> >  one million a's s = "a" * 1000000 With a Rope, we could have
> >  written this as: r = Rope.new("a", 1000000) and that could be
> >  represented very efficiently.  A better example is if we would like
> >  to search the concatenation of two strings for a regular
> >  expression.  Using only Strings, we would have to write this as:

> One related project is my old project called MetaRuby. I presented it
> at the EuropÁ sche Ruby Konferenz 2004 (although I wrote all of the
> code in 2001).

Perhaps most importantly, Rope would be a built-in type in Ruby 2.0, at
least in my virtual world where everything is the way I want it.  The
reason for this is of course that one would like to use these in code
written in C as well as in Ruby and it makes it so much easier if this
is actually part of the standard.  

Anyway, I didn't quite understand how your strings work.  I didn't
follow how your strings are created from other data.  Perhaps
http://artengine.ca/matju/MetaRuby/ wasn't the right url for this?  You
didn't specify one,
	nikolai

-- 
::: name: Nikolai Weibull    :: aliases: pcp / lone-star / aka :::
::: born: Chicago, IL USA    :: loc atm: Gothenburg, Sweden    :::
::: page: www.pcppopper.org  :: fun atm: gf,lps,ruby,lisp,war3 :::
main(){printf(&linux["\021%six\012\0"],(linux)["have"]+"fun"-97);}