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.