From: fva <fv...@ts...> - 2003-03-05 09:22:56
|
Florian Hars wrote: > Words should never run into another, but be properly separated by > characters like _. > > man perlstyle: > While short identifiers like $gotit are probably ok, use underscores > to separate words. It is generally easier to read > $var_names_like_this than $VarNamesLikeThis, especially for > non-native speakers of English. > > Would you want perl to be more readable than ocaml? I don't think that is really the question... As W.Neumann has pointed out the Ocaml team chose to include underscore in variable names but not in module names... I think we should stick to that... (Besides I've been using the CapitaliseTheInitialCharacter ever since Modula and I feel comfortable with it ;) ) Regards, Fran Valverde |
From: fva <fv...@ts...> - 2003-03-04 09:37:02
|
Nicolas Cannasse wrote: >Okay, I give up, MList was a bad name since the beginning :) >But I don't think that Mutable_List is good either. > >Perhaps "MutList" ( without underscore ) match both needs : >1) descriptive enough >2) short enough > >Do people here agree ? > I do like MutList and also MutableList... I would strongly object to ListMutable... The order doesn't look right for an English-lexicalized language (even if it is designed and managed in French ;) ) > >I'm happy that we add theses talks, that will help a lot in future problems >containing modules/functions naming. >Let's put the two rules above somewhere. > Yes, this was the best result of the thread in my understanding... Fran Valverde PD: Just my two cents... Back in the days when I learnt Lisp I used to browse the grammar and got really p....d when I read things like <sexp> to stand for "symbolic expression"... To me the thing parsed from the other end! (I was at University... You may be forgiving here!)... This gave me some funny ideas about the people who had designed the language and what they intended with it! X) F.V. PDD: This is not to imply that MList parses *in any way similar* to "sexp" X) X) X) F. |
From: Fernando A. <fer...@cc...> - 2003-03-04 12:21:35
|
On Tue, Mar 04, 2003 at 10:43:51AM +0100, fva wrote: > I would strongly object to ListMutable... The order doesn't look right > for an English-lexicalized language (even if it is designed and managed > in French ;) ) However, ListMutable is a better name if you want to have an alphabetical listing of contributed modules and want conceptually close modules to be listed close to each other. That parses as (Category: List; Subcategory: Mutable) Fernando |
From: Amit D. <adubey@CoLi.Uni-SB.DE> - 2003-03-04 16:08:39
|
> > On Tue, Mar 04, 2003 at 10:43:51AM +0100, fva wrote: > > > I would strongly object to ListMutable... The order doesn't look right > > for an English-lexicalized language (even if it is designed and managed > > in French ;) ) > > However, ListMutable is a better name if you want to have an alphabetical > listing of contributed modules and want conceptually close modules to be > listed close to each other. > > That parses as (Category: List; Subcategory: Mutable) Hi Everyone, I think it is important to make a disctinction here. When I see SomethingLikeThis, I assume it is a noun phrase. If I see Something.Like.This, I assume each identifier is a level on a hierarchy. As a native English speaker, I will tell you that ListMutable is an *ungrammatical* noun phrase. I beleive the order of adjuncts is the opposite in romance languages, but this is the way it is done in English. On the other hand, I can see the argument for calling it ExtList.Mutable (this would be like ExtList::Mutable the way Perl/CPAN does things). As another poster alluded, if you think ListMutable is a good idea, to be consistant you must also use names like TableHash, QueuePriority, etc. You can argue this is different from the category/subcategory schema argued for "MutableList", but it isn't clear to me (and wouldn't be clear for any new users) why we use the category/subcategory schema in some places, and why we use grammatical English noun phrases in other places. I beleive rather, that we should stay consistant and use the English noun phrase grammar Adjective* Noun, rather than Noun Adjective*. I agree that category/subcategory disctinction is useful one to make, but we need to find another way of doing this. -Amit > > Fernando > > > ------------------------------------------------------- > This SF.net email is sponsored by: Etnus, makers of TotalView, The debugger > for complex code. Debugging C/C++ programs can leave you feeling lost and > disoriented. TotalView can help you find your way. Available on major UNIX > and Linux platforms. Try it free. www.etnus.com > _______________________________________________ > ocaml-lib-devel mailing list > oca...@li... > https://lists.sourceforge.net/lists/listinfo/ocaml-lib-devel > |
From: Nicolas C. <war...@fr...> - 2003-03-05 01:55:34
|
> > I would strongly object to ListMutable... The order doesn't look right > > for an English-lexicalized language (even if it is designed and managed > > in French ;) ) > > However, ListMutable is a better name if you want to have an alphabetical > listing of contributed modules and want conceptually close modules to be > listed close to each other. > > That parses as (Category: List; Subcategory: Mutable) Could I object that perhaps if I'm looking for a mutable structure with some specific complexities on add/find/remove operations, then sorting them with Mutable first is better ? More seriously, I don't see why categories should be == to the module name, they still can be defined separatly in the supposed COAN module header : <module name="MutableList" cat="List" subcat="Mutable"/> Nicolas Cannasse |
From: Amit D. <adubey@CoLi.Uni-SB.DE> - 2003-03-04 17:05:32
|
...<snip>... > > answer 1: Get an editor that supports keyboard macros or > > abbreviations. At the very least, get one that supports find/replace. > > > > answer 2: let mlBlah = MutableList.blah answer 3: module MList = MutableList ...<snip>... > But I don't think that Mutable_List is good either. > > Perhaps "MutList" ( without underscore ) match both needs : > 1) descriptive enough > 2) short enough > > Do people here agree ? I agree that Mutable_List isn't good: the underscore is unnecessary. However, I do have some issues with MutList. First, I think the rules should be: 1) Intuitive 2) Concise "MutList" fits the descriptive test, espcially if we have a lot of datastructures that come in mutable/non-mutable pairs. It does not, however, pass the intuitivity test. If I knew nothing about the library, I don't have to think at all to figure out what "MutableList" does. I *do* have to think to figure out what "MutList" does. Any thing we do to make the learning curve gentler is useful, I think. Moreover, we could also "alias" MutableList to MList (or whatever) in ExtStd for more "advanced" users. Also, another problem with "Mut" is that it is just a strange contraction to make. Using "Std" for "Standard" is common and easily understood. "Ext" for "Extended" is OK. But "Mut" for "Mutable" is a bit awkward, and not very common. (Mutbl might be OK, though). All in all, this gives us three basic rules: 1) Intuitive 2) Concise 3) Conforms to English grammar (see previous email) As for MutList, I guess that leaves two options: MutableList (with a possible alias) MutblList -Amit > > I'm happy that we add theses talks, that will help a lot in future problems > containing modules/functions naming. > Let's put the two rules above somewhere. > > Nicolas Cannasse > > > > ------------------------------------------------------- > This SF.net email is sponsored by: Etnus, makers of TotalView, The debugger > for complex code. Debugging C/C++ programs can leave you feeling lost and > disoriented. TotalView can help you find your way. Available on major UNIX > and Linux platforms. Try it free. www.etnus.com > _______________________________________________ > ocaml-lib-devel mailing list > oca...@li... > https://lists.sourceforge.net/lists/listinfo/ocaml-lib-devel > |
From: William D. N. <wne...@cs...> - 2003-03-04 17:39:53
|
On Tue, 4 Mar 2003, Amit Dubey wrote: > I agree that Mutable_List isn't good: the underscore > is unnecessary. Yeah. I'm guessing the reason the underscore keeps creeping in is because of the OCaml team's use of underscores in their function names. Of course they don't use underscores in the one module they could have, StdLabels. (Well, they could also have used them in Genlex, Nativeint, and Printexec, but they didn't use any "word separation" techniques there...) So I agree that underscores should be right out. In the Apache voting style, I give: -1.0 : Use of underscores in module names -0.0 : Use of underscores in function names (it's a personal preference to not use them, but I don't really care that much) > "MutList" fits the descriptive test, espcially if we have > a lot of datastructures that come in mutable/non-mutable pairs. > It does not, however, pass the intuitivity test. <snip...> > Also, another problem with "Mut" is that it is just > a strange contraction to make. Using "Std" for "Standard" is > common and easily understood. "Ext" for "Extended" is OK. But > "Mut" for "Mutable" is a bit awkward, and not very common. > (Mutbl might be OK, though). Agreed. Although I wouldn't get my panties in a bunch if MutList were adopted. And so, my vote on names (and the underlying naming rules) are as follows: +1.0 MutableList (fully descriptive, Modifier* Subject) +0.5 MutblList (slightly abbreviated, Modifier* Subject) +0.2 MutList (moderately abbreviated, Modifier* Subject) -0.7 MList (fullly abbreviated, Modifier* Subject) -0.2 ListMutable (fully descriptive, SubjectModifier*) -0.7 ListMutbl (slightly abbreviated, Subject Modifier*) -0.8 ListMut (moderately abbreviated, Subject Modifier*) -1.0 ListM (fullly abbreviated, Subject Modifier*) William D. Neumann --- "Well I could be a genius, if I just put my mind to it. And I...I could do anything, if only I could get 'round to it. Oh we were brought up on the space-race, now they expect you to clean toilets. When you've seen how big the world is, how can you make do with this? If you want me, I'll be sleeping in - sleeping in throughout these glory days." -- Jarvis Cocker |
From: Nicolas C. <war...@fr...> - 2003-03-06 01:29:58
|
Hi, I can up with another idea this morning ( yes, morning : it's currently 10am in Japan ). What about the name of "Vector". That's short, understandable, and people coming from the Java world will be more that happy to find a data structure with which they can do add/remove. If you don't like Vector, Jacques Garrigue came up with another idea when I was talking about it : "RefList" ( that has a lot of meaning for OCaml people, since everybody knows ' a ref ) Nicolas Cannasse |
From: Eric C. C. <ec...@cm...> - 2003-03-06 01:47:38
|
On Thu, Mar 06, 2003 at 10:12:17AM +0900, Nicolas Cannasse wrote: > What about the name of "Vector". That's short, understandable, and > people coming from the Java world will be more that happy to find a > data structure with which they can do add/remove. Vector has a strong connotation of constant-time indexing, like arrays (esp. given the vectors in SML). > If you don't like Vector, Jacques Garrigue came up with another idea when I > was talking about it : "RefList" ( that has a lot of meaning for OCaml > people, since everybody knows ' a ref ) I like this much better than M(.*)List, even though one might object that it describes the implementation rather than the abstract interface. -- Eric C. Cooper e c c @ c m u . e d u |
From: Michal M. <mal...@pl...> - 2003-03-06 06:58:15
|
On Wed, Mar 05, 2003 at 08:46:28PM -0500, Eric C. Cooper wrote: > > If you don't like Vector, Jacques Garrigue came up with another idea when I > > was talking about it : "RefList" ( that has a lot of meaning for OCaml > > people, since everybody knows ' a ref ) > > I like this much better than M(.*)List, even though one might object that > it describes the implementation rather than the abstract interface. RefList sounds like reference list (list of references). List ref could be better. But I'm still not sure how it relates to Stack module in OCaml stdlib. -- : Michal Moskal ::::: malekith/at/pld-linux.org : GCS {C,UL}++++$ a? !tv : PLD Linux ::::::: Wroclaw University, CS Dept : {E-,w}-- {b++,e}>+++ h |
From: Michal M. <mal...@pl...> - 2003-03-06 07:07:14
|
On Thu, Mar 06, 2003 at 07:56:04AM +0100, Michal Moskal wrote: > On Wed, Mar 05, 2003 at 08:46:28PM -0500, Eric C. Cooper wrote: > > > If you don't like Vector, Jacques Garrigue came up with another idea when I > > > was talking about it : "RefList" ( that has a lot of meaning for OCaml > > > people, since everybody knows ' a ref ) > > > > I like this much better than M(.*)List, even though one might object that > > it describes the implementation rather than the abstract interface. > > RefList sounds like reference list (list of references). List ref could ^^^^^^^^ Ergh.. ListRef or Listref. -- : Michal Moskal ::::: malekith/at/pld-linux.org : GCS {C,UL}++++$ a? !tv : PLD Linux ::::::: Wroclaw University, CS Dept : {E-,w}-- {b++,e}>+++ h |
From: fva <fv...@ts...> - 2003-03-06 09:28:23
|
Nicolas Cannasse wrote: >Hi, > >I can up with another idea this morning ( yes, morning : it's currently 10am >in Japan ). What about the name of "Vector". That's short, understandable, >and people coming from the Java world will be more that happy to find a data >structure with which they can do add/remove. > I don't know whether "vector" is too overloaded (maths, computing) to be any indicator of what is really contained there, but I prefer it to RefList... This really smacks of the implementation (which is OK if you want to make it patent, though). Also, I was happy with any of the M(.)+List suggestiongs, but the most criptic MList (sorry Nicolas!), but Ialso your right to name your datatype as you think fit. On the other hand, the question raised by your putting forht "MList" still remains: how to go about naming new modules, etc. Have we reached and agreement about this with the "small list of rules" discussed this week? Regards, Fran Valverde |