On 6/18/07, Steve Long <[EMAIL PROTECTED]> wrote:
Ciaran McCreesh wrote:
> Luca Barbato <[EMAIL PROTECTED]> wrote:
>> Ciaran McCreesh wrote:
>> > Paludis allows users to do some-cat/foo[>=4.0&<4-3] and
>> > some-cat/foo[=4.1|=4.2|=4.3] . The syntax isn't particularly pretty,
>> > but it's cleaner than requiring duplication of the cat/pkg. Combined
>> > with :slot deps it should give you everything you need.
>>
>> Seems not bad, do you have plans to refine it before proposing it for
>> the pms?
>
> Well, I'm happy with it like that...
>
but as you said, it ain't pretty: what about simply replacing [] with ()?
&& to match || in portage and logical AND in C etc. seems wise too.
Allow both if you *have* to maintain backwards-compatibility, but it makes
it more like portage syntax, which folks are used to:
some-cat/foo(>=4.0&&<4.3) seems clean, for this example.
To my mind, | seems like a good second-level operator, so one could have:
cat-foo/bar(~3.6||~3.7|>=4.0&&<4.3|>=5.1) while still using the operators
everyone is used to for most things.
(& makes no sense in that context, of course.)
If you can, try integrate a name based syntax into the requirement.
using decorative characters alone may have their uses, but there are
only so many you can use, and so many combinations you can create
before all your code starts looking like perl's acme eyedrops. I say
name based, because this allows some degree of permitting forward
development & enhancement without majorly breaking an existing system
:)
( im not much of a lisper, but lisp a lot of functionality for the
cost of very minimal symbol abuse . .im not saying we should use lisp
syntax, but maybe a page from their book in terms of expandability )
--
Kent
ruby -e '[1, 2, 4, 7, 0, 9, 5, 8, 3, 10, 11, 6, 12, 13].each{|x|
print "enNOSPicAMreil [EMAIL PROTECTED]"[(2*x)..(2*x+1)]}'
--
[EMAIL PROTECTED] mailing list