On 2013-07-06 8:37, Joshua Partlow wrote:
On Wednesday, June 5, 2013 5:15:15 PM UTC-7, henrik lindberg wrote:

     >
    
https://github.com/puppetlabs/armatures/blob/master/arm-8.hiera_2/index.md#explicit-when-common-or-not
    
<https://github.com/puppetlabs/armatures/blob/master/arm-8.hiera_2/index.md#explicit-when-common-or-not>

     >
     > Allowing `when common {}` seems clearer, but I wouldn't require it..
     >
    I am fine with both, but since most are likely to write without common
    {} it does not help much...


Definitely, I just think that since the common case is a short cut,
writing it out 'longhand' as it were should parse.

I am ok with that.

     >
    
https://github.com/puppetlabs/armatures/blob/master/arm-8.hiera_2/index.md#precedence-score---how
    
<https://github.com/puppetlabs/armatures/blob/master/arm-8.hiera_2/index.md#precedence-score---how>

     >
     > It doesn't seem clear to me that a nested binding necessarily should
     > have precedence over an unnested one.  I think this is a case
    where we
     > need to let people know about the conflict and let them resolve
    it in a
     > higher layer.
     >
    Wouldn't you be more surprised if a binding for "red" and "kermit" did
    not win over a binding for just "kermit" ?


Yes, but I would also expect "kermit" to take precedence over,
  "production { virtual }", so there are both surprising and
non-surprising results, which is why I think we need to be explicit
about any conflicts rather than try to apply heuristics to resolve
precedence.

well, kermit and virtual would win over just kermit, or just virtual.

     > I would not try the alt scoring method yet.  Though deterministic, I
     > think it's too open to surprising the user rather than just
    letting them
     > know what is in conflict.
     >
     >
    
https://github.com/puppetlabs/armatures/blob/master/arm-8.hiera_2/index.md#is-override-too-overloaded
    
<https://github.com/puppetlabs/armatures/blob/master/arm-8.hiera_2/index.md#is-override-too-overloaded>

     >
     > Do you mean as a word or is it used in two different areas in the
     > proposed language?
     >
    Same keyword used in two places, with slightly different meaning. Also
    the act of "overriding" may be more conceptually closer to doing a
    binding in the user's mind - i.e. any binding is a potential override.
    I used override since it is @Override in Java.


Where are the two cases?  I only see 'binding override'

     > override "foo" to 42
     >
     > or
     >
     > bind overridding "foo" to 42


I was wrong - one is the keyword, and the other the concept of "overriding" bindings - as the question states - layers and categories have precedence, and you are thus overriding (conceptually). To then also have a keyword that states "override" makes it confusing, the ones that are not marked that way may be conceptual overrides. So, that is the real question. In a way I am tempted to not include support for declaring "override" even if it is a valuable quality feature.

A great term would help here.

Thanks for the feedback.

- henrik


--
You received this message because you are subscribed to the Google Groups "Puppet 
Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-dev?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to