OK, thanks.  Still not clear about these examples for replaceAt:

"abcdef"~replaceAt(" ",3, 3) -> "ab ef"
"abc"~replaceAt("123",5,6,"+") -> "abc+123"

I would think that the first would give "ab   f", i.e. 'cde' replaced
with 3 blanks.  And the second I don't get at all :-(

Rick McGuire wrote:
> On Sat, May 9, 2009 at 7:36 AM, Gil Barmwater <gbarmwa...@alum.rpi.edu> wrote:
> 
>>Having almost completed my presntation on the new stuff in 4.0.0, I just
>>have four more questions.
>>
>>1) The ReadMe says "The MutableBuffer class has been enhanced so that it
>>has most, if not all, of the methods of the String class."  Do we know
>>of any methods that are NOT in both or should it say "...has all..."?
> 
> 
> There are quite a few that were not implemented becaus they really did
> not make much sense for a mutablebuffer.  For example, the arithmetic
> functions (min, max, sign, abs), the various conversion functions
> (d2c(), etc.), datatype().  There might be others, but those are the
> ones the spring immediately to mind.  I believe the set of "string"
> functions is fairly complete, but even here there are exceptions
> (abbrev(), the base64 encode/decode).
> 
> 
>>2) Can you explain when one would use the String Class replaceAt()
>>method rather than overlay() or changeStr()?
> 
> 
> Ok, here's a souce string"  "aaaaaaaaaaaaaaaaaaaaaaaaa"
> 
> Use chagestr to replace the characters starting at position 6 for 5
> characters with "123"
> 
> Now try this with overlay()
> 
> Now do you see the benefit of replaceAt() :-)
> 
> To do this operation without replaceAt requests two substrings (or a
> parse operation, which is the equivalent) + two concatenate
> operations.  This requires the creation of 4 objects to get one
> result.  This can also be done with a delstr()/insert() combo, which
> only creates one extra object, but replaceAt() does it in one shot.
> replaceAt() is particularly useful with mutableBuffer if you're using
> it to make editing-type operations.
> 
> 
> 
>>3) While I believe I understand the difference between a Table and an
>>IdentityTable, can you give me an example of when I would need to use an
>>IdentityTable rather than a Table?
> 
> 
> IdentityTable is used mostly for situations you need to keep track of
> actual object instances rather than relying on "equality", which may
> not be the same.  The interpreter uses this internally, for example,
> to keep track of the objects that have a pending uninit() operation.
> In this situation, it is important that the table be able to use the
> object as an index even if the "==" method of the object claims that
> this object is "equal" to another object.
> 
> At lot of the uses of this are pretty esoteric....but when you need
> it, you need it!
> 
> 
>>4) How are the new utility classes for sockets, MIME and SMTP provided,
>>i.e. where are they in the distribution, and what does one need to do to
>>make use of them?
> 
> 
> David will need to ansewr that one.
> 
> 
>>Once I make the updates based on the answers, I could send an outline
>>form of my presetation to anyone interested for review if you'd have
>>time.  Want to make sure I got it right!
> 
> 
> Yes, please send me a copy.
> 
> 
>>--
>>Gil Barmwater
>>
>>------------------------------------------------------------------------------
>>The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
>>production scanning environment may not be a perfect world - but thanks to
>>Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
>>Series Scanner you'll get full speed at 300 dpi even with all image
>>processing features enabled. http://p.sf.net/sfu/kodak-com
>>_______________________________________________
>>Oorexx-devel mailing list
>>Oorexx-devel@lists.sourceforge.net
>>https://lists.sourceforge.net/lists/listinfo/oorexx-devel
>>
> 
> 
> ------------------------------------------------------------------------------
> The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
> production scanning environment may not be a perfect world - but thanks to
> Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
> Series Scanner you'll get full speed at 300 dpi even with all image 
> processing features enabled. http://p.sf.net/sfu/kodak-com
> _______________________________________________
> Oorexx-devel mailing list
> Oorexx-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/oorexx-devel
> 

-- 
Gil Barmwater

------------------------------------------------------------------------------
The NEW KODAK i700 Series Scanners deliver under ANY circumstances! Your
production scanning environment may not be a perfect world - but thanks to
Kodak, there's a perfect scanner to get the job done! With the NEW KODAK i700
Series Scanner you'll get full speed at 300 dpi even with all image 
processing features enabled. http://p.sf.net/sfu/kodak-com
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to