World: r3wp
[!REBOL3]
older newer | first last |
Ladislav 11-Jan-2011 [6907] | suggested reading: http://www.rebol.com/r3/docs/concepts/scripts-style.html#section-10 |
Maxim 11-Jan-2011 [6908] | the convention for functions simpy is that: -they should (start with) verbs -if using a noun, it should have some special char to imply its a function. (i.e. size? vs size) |
Ladislav 11-Jan-2011 [6909] | also: http://www.rebol.com/r3/docs/concepts/scripts-style.html#section-11 |
Maxim 11-Jan-2011 [6910x2] | words of breaks this convetion since it starts with an noun and isn't followed by a special char... I think that is the only point Ladislav is trying to make !!?!? |
oops... should be: words-of | |
Ladislav 11-Jan-2011 [6912x4] | no, I was trying to make the point, that WORDS-OF may well be added as an alternative |
(to the above doc article) | |
...since it is missing | |
...and since it does not introduce any ambiguities when added, as far as I am able to find out | |
Kaj 11-Jan-2011 [6916x4] | You would have a stronger case if you would admit that it is about property getters, not about nouns as such |
The documentation would make a stronger case if it wouldn't confuse nouns and verbs | |
Some nouns can also be used as verbs. | |
This is impossible in human language. What it means is that some nouns can also be used as function names | |
Ladislav 11-Jan-2011 [6920] | While I see the WORDS-OF naming convention as coming from the C language, I am not a C hater to the extent to refuse it. As some noticed, it may even make the source code more human readable as in: length-of series versus length? series |
Kaj 11-Jan-2011 [6921x2] | By definition, when this situation occurs in human language, we say that the word can be used as both a noun and a verb, with different grammar and semantics |
In human language, that doesn't require a different form for the word, but it does trigger a flag in our language sensibility that something odd is being said | |
Ladislav 11-Jan-2011 [6923] | It is funny, that it looks, that people prefer length-of series to the form get-length series which is starting with a verb... |
Kaj 11-Jan-2011 [6924] | Because it is declarative |
Steeve 11-Jan-2011 [6925] | when "length" is followed by a serie Why do we need to write "length of serie" , Is that not already implicit ? |
Ladislav 11-Jan-2011 [6926] | I am sorry, Steeve, but I probably do not understand your question |
Steeve 11-Jan-2011 [6927] | I just wonder, giving that idiom -> length serie Why do we need to specify: -> length of serie Is that not already implicit, that the word "length" applies on the "serie" |
Maxim 11-Jan-2011 [6928x3] | length serie isn't readable. they are two different sentences, in fact you'd need a comma or a semi-colon in english. |
length? implies the whole sentence... what is length of ? | |
our brain fills in the gap cause its very obvious for any english speaker... this might not be the case for non native english speaking people though... | |
Steeve 11-Jan-2011 [6931x2] | I'm ok to add "of" in Rebol as a special transparent word to help the reader. >> of: func [value][:value] to be able to write such things like: >> length of serie |
but not like a mezz, it must be fast | |
Maxim 11-Jan-2011 [6933] | the issue is that 'length is the function, not 'of and length is not a verb, this is very confusing. |
Steeve 11-Jan-2011 [6934] | size is a noun as well a verb |
Ladislav 11-Jan-2011 [6935] | Yes, but that is quite funny, since "size" as a verb does not mean what the "size?" word is supposed to mean |
Maxim 11-Jan-2011 [6936] | steeve, yes which is why adding an ! or ? at the end is an easy to make a difference between the noun or the verb. |
Kaj 11-Jan-2011 [6937x7] | that is quite funny, since size" as a verb does not mean what the "size?" word is supposed to mean" |
This is what I meant by that the case of the same word being able to be either a verb or a noun triggers a flag in one's language sensibility | |
What Steeve means is that, nonetheless, English has no problem with the two cases being the same word, because it can be inferred from the context | |
To "size something up" means "to get the size of it" | |
To make that explicit, you could use size-up for the verb and size-of for the noun | |
Of course, you could also use <verb>size</verb> and <noun>size</noun> | |
The point being, that REBOL is based on relative expressions, so SIZE is correct to use in all cases, like in human language | |
Ladislav 11-Jan-2011 [6944] | if you are saying "I do not want to respect the REBOL function naming convention" then I don't want to change your mind in that. But, I think, that a reasonable naming convention is of advantage, and the one Carl wrote looks good enough to me. |
Pekr 11-Jan-2011 [6945] | This all should move to advocacy :-) |
Ladislav 11-Jan-2011 [6946x2] | Why? |
(it discusses the function naming if I am allowed to remind you) | |
Pekr 11-Jan-2011 [6948x2] | Because when I got back to home, it feels like arguing :-) i know we are discussing consistency here, and I am the first one who always screams when something is feeling inconsistent, but - I would 100 times prefer Carl being back, ending his 2-3 months R3 black-out period, instead of caring, if one function is going to be called faces-of, or faces?, because in the end the discussion started because of that. And even more - whatever we think, will have to be agreed by Carl anyway ... |
Ladislav - it was exagerration on my part :-), but I just try to explain, that we have imo more important things to care about :-) No offense here .... | |
Ladislav 11-Jan-2011 [6950] | The importance is in the eye of the beholder. If I saw it the way you do, I would not have written the code I wrote today. |
Kaj 11-Jan-2011 [6951x6] | I am not disrespecting the REBOL function naming convention, I am respecting REBOL's founding principle and trying to make you see that it means that things are context dependent, instead of black and white |
Analysing conventions in current naming of standard REBOL functions (that is, the practice instead of the documentation about the practice) two conventions can be seen in R2 and now three conventions in R3 | |
The simplest, most abstract and thus most flexible convention is to use a word as-is, just like in English. As you observed, this applies to the math functions, for example, such as SINE | |
The second convention in R2 is to add the ? qualifier. Most of the functions this applies to return a logic value, but some return other values, such as LENGTH? | |
R3 has added a third convention with just a few examples to date, such as words-of and body-of | |
This makes it clear that there is a reason not to use the ? for all these cases, because otherwise they could have been WORDS? and BODY? | |
older newer | first last |