From: Nicolas C. <war...@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" in > the root of each module). Then get a ton of code up there. Deal with the >> 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 and >> planning. > > 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 functions among > hundreds. > > 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 > them. > > 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 Not_found *) 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 Nicolas Cannasse |