On Fri, Aug 22, 2008 at 06:10, Tony Balinski <[EMAIL PROTECTED]> wrote:
> Quoting Bert Wesarg <[EMAIL PROTECTED]>:
>
>> >> >    if (v = [k] in array) { ... }
>> >> true if array[k] == v, right?
>> >
>> > no - it means
>> >  if ([k] in array) { v = array[k]; ... }
>> Ahh, ok. Maybe this would be a nice addition:
>>
>>     if ([k] == v in array) { ... }
>>
>> would be the same as:
>>
>>    if (([k] in array) && (array[k] == v)) { ... }
>>
>> But I can't see a value for this right now ;-)
>
> Neither can I. But you'd have to include the other 5 compares...
>
>> > BTW, you also get (.key = v in array) doing the same value retrieval;
>> this
>> > is identical to (v = ["key"] in array)...
>> >
>> >> Both sounds reasonable, except my previous concern about v=[k].
>> >
>> > Like you I prefer putting the value placeholder after the "=", to match
>> the
>> > anonymous array syntax.
>> Than why do have this syntax  in the first place?
>
> Because I was looking for preferences from others... Anybody else want
> to chime in at all?
Yeah,. two are bad for a democracy ;-)

>
>> > ... my intention [with my patch page] was to provide "single
>> > functionality patches" which would always apply to the code base, and
>> > combine with intermediate ones to get the assemblage I want (as you've
>> > seen in the past). The accumulation of changes is really too much.
>> "my intention was to provide", if this isn't your intention anymore,
>> you know you don't need to stick at this.
>
> I'd like to do so still, but it's just getting to be too much to be able
> to keep combining them to build my own "ueberpatched" version!
I must admit, that I haven't found the perfect tool either. quilt[1]
is what I used to use, But I'm still looking for a better one.

Quilt makes it really simple to apply and un-apply patches. The
patches have a linear dependency (the series file). I keep all patches
under revision control (CVS in the past, now git[2]), to have history,
which looks mostly awkward, because a diff from a diff isn't that
readable. Also this is all hand driven. I commit only if all patches
apply cleanly.

Pros:
 + simple commands
 + easy "ueberpatch" (just apply all patches in order)

Cons:
 - no history
 - strict linear dependencies

I'm currently playing with git. I have set up a git mirror of the
NEdit CVS repo[3] and try currently TopGit[4]. TopGit is only a thin
layer over git, so you need to be familiar with git. The patches
(topic branches in there glossary) can have a DAG as dependencies
topology, so maybe no dependencies at all, too (i.e. all are based on
master). But you could create a fake patch, which depends on all your
patches, and therefore is a merge from all of them. git itself has a
feature called rerere[5], which looks like your __fix* patches, i.e.
the merge resolution, and can therefore simplify the merge process. I
haven't tried this by myself, its only my understanding.

Pros:
 + local history
 + merging should be simpler

Cons:
 - TopGit commands are not complete
 - switching from one topic to the next or prev in the DAG is

So I think, there are tools which can simplify your workflow. Its
only, that you need to lern to work with them.

Regards
Bert
> Tony

[1] http://savannah.nongnu.org/projects/quilt
[2] http://git.or.cz/
[3] http://kgb.endoftheinternet.org/git/nedit (thats down again at night)
[4] http://repo.or.cz/w/topgit.git
[5] http://www.kernel.org/pub/software/scm/git/docs/git-rerere.html
-- 
NEdit Develop mailing list - [email protected]
http://www.nedit.org/mailman/listinfo/develop

Reply via email to