World: r3wp
[Core] Discuss core issues
older newer | first last |
Graham 18-Sep-2005 [2072] | no problems. |
Ladislav 19-Sep-2005 [2073x2] | One "poll" question. How many of you are using function with optional argument in your scripts and how much would you miss this feature? |
Another "poll". What would you say to this: | |
Pekr 19-Sep-2005 [2075] | what do you mean by function with an "optional argument? do you mean refinement? |
Ladislav 19-Sep-2005 [2076x2] | +-: :negate +- 6 ; == -6 +- -6 ; == 6 |
Function with optional argument: we can say either: list-dir %. or list-dir | |
Pekr 19-Sep-2005 [2078] | Weren't optional arguments problem in rebol? Wasn't it said to compliacte it language parser? I can live without them so far ... but ask those who code in rebol intensively ... |
Henrik 19-Sep-2005 [2079] | I just use refinements, if I want optional arguments... but I rarely use them |
Geomol 19-Sep-2005 [2080] | Ladislav, I've programmed an UNIX-like cd function with optional argument, but that's about it. |
Ladislav 19-Sep-2005 [2081] | aha, but you are using it in the console rather than in sripts, aren't you? |
Geomol 19-Sep-2005 [2082] | yes |
Volker 19-Sep-2005 [2083] | its handy for console and i like it there. in programs its more a problem. |
Ladislav 19-Sep-2005 [2084] | thanks |
Pekr 19-Sep-2005 [2085] | Ladislav - why are you asking? |
Ladislav 19-Sep-2005 [2086x3] | just to find out which way of handling UNSET! looks optimal |
the NEGATE case: for me the name looks "ugly", I prefer something shorter, like +- | |
(any better idea?) | |
Geomol 19-Sep-2005 [2089] | Nope, I think your +- is fine and short. |
Graham 19-Sep-2005 [2090] | why the need for short function names? Rebol is a symbolic language, so why not use more symbols ? :) |
Geomol 19-Sep-2005 [2091x2] | I have a question about the order of arguments to a function. I wanna hear your opinion. I'm programming REBOL versions of some of the Amiga graphics.library functions. BltMaskRGBMap is a function of mine, that will copy part of an image at a certain position and size to another image through a mask. It takes the arguments: source image, source position, destination image, destination position, size and finally mask. That would be the order of the arguments, if it was an Amiga graphics.library function. But in REBOL, destination is often (always?) first, so maybe I should switch source image and position with destination image and position? What do you think would be the better way for a REBOL programmer? |
Graham, :-) readability maybe? | |
Graham 19-Sep-2005 [2093x4] | Well, I can't recall the last time I needed to negate something. |
Better to have something expressive like 'negate than obscure symbol combinations. | |
Remember that Rebol is meant to be read like english. | |
memory copy operations are always source -> destination. | |
Geomol 19-Sep-2005 [2097] | I use negate several places in Canvas, e.g. to calculate the angle of an ellipse: canvas/effect/draw/2: negate arccosine ((u/x * v/x) + (u/y * v/y)) / divisor |
Graham 19-Sep-2005 [2098] | that does not +- my argument. |
Geomol 19-Sep-2005 [2099] | Graham, are they? WRITE destination value destination -- (Type: file url object block) value -- (Type: any) |
Ladislav 19-Sep-2005 [2100] | NEGATE looks quite ugly to me: mod negate n scale the mod +- n scale looks more readable (to me again) |
Geomol 19-Sep-2005 [2101] | But maybe write isn't considered a mem operation, even if destination is an object or block? Well, I'm not sure. |
Ladislav 19-Sep-2005 [2102] | When there are both ABS and ABSOLUTE, I would prefer to have both +- and NEGATE too |
Geomol 19-Sep-2005 [2103x2] | CHANGE series value Change seem to have destination first aswell. Didn't Carl write a blog about it at some time? |
Some say tomato and some say tomahto Some say potato and some say potahto Tomato, tomahto, potato, potahto Oh, let's call the whole thing off | |
Ladislav 19-Sep-2005 [2105] | :-) |
Geomol 19-Sep-2005 [2106x2] | I'm sure, Carl wrote something about the order of arguments somewhere, but can't find it!? |
Like a "function arguments guideline"? Doesn't it ring a bell? | |
Gabriele 19-Sep-2005 [2108] | Ladislav: the short form for negate was intended to be -, but of course that can have its own problems. +- is not very readable to me though, as i wouldn't immediately associate it with negate. |
Ladislav 19-Sep-2005 [2109x2] | well, there is a character used on calculators: #"±", but I am not able to write it on Czech keyboard |
OTOH, - isn't a shortcut for negate. Cf: a * negate x | |
Romano 19-Sep-2005 [2111] | > x: 2 == 2 >> 2 * negate x == -4 >> 2 * - x == -4 >> 2 - - x == 4 >> 2 - negate x == 4 >> |
Ladislav 19-Sep-2005 [2112x2] | right, I picked wrong example, but anyway, - is not a NEGATE shortcut: |
>> 5 - 2 == 3 >> 5 negate 2 == -2 | |
Romano 19-Sep-2005 [2114x2] | only in rare case |
you need absotutely negate instead of - | |
Ladislav 19-Sep-2005 [2116] | OK, this case looks rare to you, how about this case: add 5 negate x ... add 5 - x |
Romano 19-Sep-2005 [2117] | rare case , at least for me, in my experience, and you can always use add 5 ( - x ) which is also more fast |
Ladislav 19-Sep-2005 [2118x2] | yes, I can, it just needs parentheses, i.e. may be considered less readable (a matter of taste, I think) |
e.g. Carl is preferring to use NEGATE instead of parenthesized - AFAICT | |
Geomol 19-Sep-2005 [2120] | Taking the example with add, 5, negate and x, we can write: add 5 negate x add 5 (- x) 5 + negate x 5 + (- x) + 5 negate x + 5 (- x) and using Ladislav's +-: :negate, you can change negate to +- in the above. In REBOL there're really many ways to write even the simplest thing. |
Romano 19-Sep-2005 [2121] | also: 5 + - 2 |
older newer | first last |