[futurebasic] Re: [FB] FB^3 Rosetta Stone Library

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : October 2001 : Group Archive : Group : All Groups

From: Jay Reeve <jktr@...>
Date: Sat, 20 Oct 01 09:53:45 -0500
Ken,

Nice compilation. Very thoughtful and diplomatic of you to include all 
the different versions. Let me suggest that those who foresee regular use 
of these FNs select one version of each and put them into an include file.

It might be interesting for someone to evaluate, among similar FNs, which 
is faster, which compiles to more compact code (both objective), and 
(more subjective) which is easier to read, which is easier to use.

Please don't set these in stone (pun intended) yet, as I am nearly 
finished with a monster REPLACE FN that will accomplish replacements in 
large (multi-megabyte) containers so fast you'll think it didn't work. It 
includes a non-case-sensitive option, and initial results on my slow old 
240Mhz G3 look like this:

>Searching a 4500000-char container comprising 100000 repetitions 
>of "1234567890-=qwertyuiop[]asdfghjkl;'zxcvbnm,./"
>Non-case-sensitive search
>
>replacing "1234567890" with "01020304050607080910"
> 100000 instances replaced in 0.7176 seconds.

BUGS
In at least 2 of my FNs in your listing (LTrim & RTrim), there seem to be 
missing underscores in a IF strVar[i] = _" " syntax. There is also a 
superfluous line in the LTrim FN, which should read as follows:

'~LTRIM (Example 1)

// Contributed by Jay Reeve

LOCAL FN LTRIM$( lTrimStr AS STR255 )
dim c,L

L = lTrimStr[0]
for c = 1 to L
long if lTrimStr[c] <>  _" "
ltrimStr = mid$(ltrimStr,c)
exit fn
end if
next
lTrimStr[0] = 0
END FN = lTrimStr

 0"0
 =J= a  y
  "