From: Nicolas Cannasse <warplayer@fr...> - 2003-02-25 02:34:33
> Make some incredibly minimum directory layout suggestions and minimal
> project documentation (something like text file called "description.txt"
> the root of each module). Then get a ton of code up there. Deal with
>> consequences later. The number of community projects with intricate and
>> beautiful submission specifications and no useful code or users far
>> outweighs the number of useful projects bogged down by bad indentation
> I don't think uploading a ton of code and deal with consequences *later*
is the easy way :
> someone will have to sort the functions, and try to give some consistency
for the functions
> of a module. This can be very difficult when it means finding the good
> What about this other way : let's find some topics for modules (strings,
lists, ...), then
> for each topic ask everyone what functions are missing and useful, then
upload them or code
> them. Otherwise, I'm afraid the mess in the libraries will result in mess
in programs using
> Building stable libraries will make them more usable : I don't think
anyone would use a
> library whose interface is always changing.
I totally agree with you Maxence, as I suggested in the "how to process"
part of my last mail.
But it's true right now lots of people have already been writing their own
librairies, so there is already code around. And I'm afraid that discussions
such as "what to include in such module" will be a big mess :) But let's try
As for myself, my -own- library is adding several functions to the String
module - no function for the List module - and a whole new module called
MList , which is a mutable List with in-place add / remove etc...
About String, theses are mainly :
val split : string -> ~separator:string -> string * string (* raise
split "abcde" "c" => ("ab" , "de")
val lchop : string -> string
lchop "abcde" => "bcde"
val rchop : string -> string
rchop "abcde" => "abcd"
and also some usefull "C-like" shortcuts such as
let itos = string_of_int
let ftos = string_of_float