[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [leafnode-list] local groups, use as archive



phil hunt <philh@xxxxxxxxxxxxxxxxxxxxxx> writes:

> > That's an implementation issue. The overall code quality in leafnode is
> > not good, particularly, error detection and propagation leave much to
> > desire.
> 
> I find the leafnode code hard to read; C functions spanning hundreds
> of lines are not to my taste.

Not to mine either, and it's not used securely, as macro assemblers such
as C :*) seldomly are. Seriously, the ANSI-C libraries encourage unsafe
programming, and some old APIs are really broken (gets - fixed buffer,
no length limiting possible; fgets - does not report back the count of
characters read, so you can't tell \0 from \n; string handling)

> > That's a valid point, but then again, I haven't seen Unix newsreaders which
> > would use a proprietary format other than "one article per file" or one
> > of the common mailbox formats. Not sure about Windows clients. Someone
> > with decent software here (!= Outlook) who can comment?
> 
> Two I've used -- Agent and Turnpike -- both use proprietary formats.
> Another one, KA9Q for DOS, used what look like a mailbox format 
> (though that program is hardly ever used now).

Ok, so an archive might be an option in leafnode later on. However, I'd
really like to clean things up and get the cruft out, if it's not
happening for 2.0, it's never happening...

I'm wondering if switching to C++ would buy us anything, because it
would require reworking all APIs and group libraries functions and data
structures into classes, but I'm not feeling like spinning of yet
another leafnode derivative to try it, I don't have the time to do it;
and then again, a rewrite from scratch might be much cleaner, and
Cornelius is not there at the moment to comment, and I presume he might
not be too inclined to switch. C++ would bring some portability issues,
and with some real passing around of classes, it gets a space and
performance issue as well. It might be like working around broken old
STL, working around old compilers and things, which would then
compensate the advantages somewhat.

-- 
Matthias Andree

-- 
leafnode-list@xxxxxxxxxxxxxxxxxxxxxxxxxxxx -- mailing list for leafnode
To unsubscribe, send mail with "unsubscribe" in the subject to the list