RE: [dcdev] adc
"Jacek Sieka" <[email protected]>
2004-01-21 8:12
"'Direct Connect developers'" <[email protected]>

On Tuesday 20 January 2004 20:00, Jacek Sieka wrote:
> A) because the vast majority of users don't have the slightest idea of what
> a regular expression is

but the majority does not mean everybody. The majority of people have feet but this does not have prevented automobile creation ;-)
The majority of people do know how to drive though (in the western part of
the world where the majority has a car anyway)...and as sandos noted; all
the regex searchs you provided in your tests were archivable with substring
search as well...

> B) because it would require a 3rd party library (or very much work) to
> create a BASE compilant client on the biggest target platform, i e it's not
> part of the C standard library

I am not sure about this. When I do a "man regex", it is classified in man(3) and it is in POSIX.2. Moreover, there is no libregex anymore since ... a long time :)
Being in posix.2 means, among other things, that it's not covered by the
standard c library...it also means that it's not available on windows, and
although you might think that linux is the answer to everything, I doubt
that your client comes even close to the >1000000 downloads that dc++ had in
it's second latest version (and that being from sf only, not counting the
countless mirrors and freeware cd's its being distributed through)...hence,
the major dc platform does not support regexes without library support...

> C) because they are slower (indexed searches become tricky for instance)

It is not slower (see earlier mails in the mailing list for test results) and indexed searches are mainly a matter of index organization.
It is. Even some of your simple searches took ~0.1s, imagine what a more
complex one would do that actually uses the enhanced expressiveness of
regexes (start by introducing a few | and you'll see...), and if it takes
0.1s it means that the highes search throughput will be 10searches/s with
100% cpu, which is not very impressive, not in my eyes anyway...

> D) because if there's demand for it, it's very, very easy to add to the
> protocol and mandate by the hub (using sup)

then why not add it immediatly if it is so easy :)
Because it adds complexity to a BASE client...if anything should be added,
it's hashes...


DC Developers mailinglist