← Back to team overview

modred team mailing list archive

Re: Include headers

 

Right, so if we aren't reimplementing any of the C library, we don't need to 
replace those headers...

Also, instead of rewriting an additional standard library (except related to 
cluster features, obviously that would be custom), having some external 
libraries "guaranteed" might be a better idea. For your example, libgmp 
already provides a very good arbitrary-precision numbers support in C.

Of course, programs could presumably use some external libraries anyway, 
right? Libgmp could presumably be statically linked in to a binary without any 
issues...

On Sunday 03 January 2010 17:48:34 you wrote:
> The header needs to precisely define our interface.  Not what our
> interface is attempting to mimic.  Thus, every header needs to be
> created, pretty much from scratch, by us, carefully.
> 
> We aren't in general, going to reimplement the C/C++ standard library.
>  Almost all of it, even the memory allocation parts, are going to be
> exactly the same, except the underlying syscalls will have different
> implementations (they'll call our own syscalls). Eventually we might
> tweak stuff to speed it up by reducing the number of crazy syscalls.
> 
> But: can we agree that the C standard library could do with a few more
> features? Avoiding bloatware, couldn't we still make a slightly more
> comprehensive math library, perhaps with indefinite precision support
> or something similar?
> 
> On 1/3/10, Frederic Koehler <fkfire@xxxxxxxxx> wrote:
> > Uh...why do we need to reimplement the C/C++ standard library? The math
> > functions, at least, in standard C are totally fine for a base.
> >
> > I don't see why modred headers would need anything except the stuff
> > directly relevant to the cluster's operation.
> >
> > On Sunday 03 January 2010 15:14:45 Scott Lawrence wrote:
> >> I've started working on the headers that C programs can access. We
> >> should create the POSIX headers after creating native modred headers,
> >> since they'll likely have several includes (like including the math
> >> libraries).
> >>
> >> The headers are in /include/c of the repo. An explanation is in README
> >> there. Try to maintain good documentation, generated with doxygen.
> >>
> >> Question: what stuff should our math headers support, and what other
> >> general (non-memoryalloc, i/o type stuff) headers should we have?  I
> >> guess data structures, but what else? What sorts of algorithms are
> >> there that could possibly be of use? (Yes, by the way, I'm
> >> deliberately implementing stuff that's generally implemented in the
> >> STL in C. I think that's appropriate, and should have been done long
> >> ago?)
> >>
> >> It'd be nice if the functionality our headers/libraries had was
> >> significantly superior to the standard UNIX equivalents.
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~modred
> > Post to     : modred@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~modred
> > More help   : https://help.launchpad.net/ListHelp
> 



References