>>>>> On Tue, 17 Oct 2000 09:07:50 -0500, Dave Plonka <[EMAIL PROTECTED]> said:
> Kurt, thanks for the feedback.
> Considering Net::Patricia vs. Tree::Patricia...
> On Mon, Oct 16, 2000 at 05:43:08PM -0400, Kurt D. Starsinic wrote:
>> On Mon, Oct 16, 2000 at 12:19:42PM -0500, Dave Plonka wrote:
> <snip>
>> > I think it belongs in the Net namespace because it requires that the
>> > search keys must consist of IP addresses and netmasks, and the
>> > underlying C code on which it is based requires that as well. I.e.
>> > this module is not a general Trie implementation like Text::Trie or
>> > Tree::Trie.
>>
>> It seems to me that it would be more appropriate as, e.g.,
>> Tree::Patricia. It doesn't implement network protocols, rather it
>> manipulates data structures. The fact that the elements of the
>> data structure _can_ obviously be interpreted as CIDR addresses and
>> netmasks doesn't prevent one from coming up with more dastardly uses
>> for the module.
> I agree with the assessment that Patricia is a data structure not
> network protocol. However, there are precedents such as Net::Netmask
> and Net::IPv4Addr of which one could say the same.
> Do those modules not belong in Net? [rhetorical]
Bad precedent is ubiquitous on CPAN:-/
> I'm not against the Patricia module being in Tree::Patricia, but there
> are other complications... The C code on which the module is based
> looks like networking code in that it currently uses inet_addr(3) and
> therefore requires "<arpa/inet.h>" and "-lnsl". I could follow
> Socket.pm's lead and reimplement a private/static inet_addr within to
> eliminate that requirement, but avoiding the system-provided library
> routines in these way could make it harder to maintain, esp. when I
> pass-thru IPv6 addr support to the perl API.
Strong arguments.
> At the moment, I'm still leaning toward Net::Patricia because of the
> underlying networking requirements.
We are all starting to react allergically against Net:: because it
becomes a bit basket, it's crowded there. But I see you arguments in
favor and I see you have uploaded version 1.009. I tend to accept
Net:: based on your arguments.
--
andreas