[gobolinux-users] Gobo wants you! (to comment its scripts)
Daniele Maccari
gobo.users at gmail.com
Sat Apr 12 21:24:21 NZST 2008
Michael Homer wrote:
> On Sat, Apr 12, 2008 at 8:14 PM, Daniele Maccari <gobo.users at gmail.com> wrote:
>
>> Michael Homer wrote:
>>
>>> Anything that has an effect beyond returning a value (by output or by
>>>
>> > return). Changing variable definitions, outputting to the user (also
>> > what Show_Version does), terminating the script are all side effects.
>> >
>> So, for example, Add_Option updates the options arrays: has it to be
>> considered a side effect?
>> I'd say yes, since arrays are global to the whole script.
>>
> Hmm. Possibly (technically, yes), although those arrays are internal
> to the function, rather than part of the interface. I was more
> thinking of functions like String_To_Array, which also defines an
> array, but one you're meant to use.
>
> I would note anything that you would or should notice as a caller, and
> leave out anything specific to the internals of the function. There's
> no real encapsulation in bash, so it's a bit of a judgment call which
> category any one thing fits into.
>
>> As a side note, I could have inserted some blank lines between chunks of
>> code when I felt them a bit "compressed", this making them not so
>> clear/readable. Please let me know what you think about this.
>>
> I don't have an opinion on that in the general case. If it's unclear
> as a big block, add a blank line, but don't go crazy with it.
>
>> Last but not least, I've got a little doubt about what this piece of
>> code does, could you please help me? http://pastebin.com/m78380740
>>
>> If I got it right, it loops through the current string's characters to
>> find a valid shortening. At the end, if none was found, it "Log_Error"s
>> the failure. What I cannot understand is why looping for all characters,
>> shouldn't an option be identified by its first character only? Though
>> maybe I'm missing the eval option=\${${i}} part.
>>
> It loops for compressed short options (which I didn't know we
> supported), and eats the rest of the string/the next parameter if it
> hits an Entry or List item. Think of it working like `tar -xjvf
> file.tar.bz2`; x,j,v are Boolean options that are enabled, f is an
> Entry item that eats the next parameter (and breaks from the loop over
> characters).
> -Michael
>
Ok, it should be ok now, I mailed the patch to the devel list, mainly to
keep this thread as dedicated to pure ideas/organization as possible.
Thanks again for the help.
Bye
More information about the gobolinux-users
mailing list