I agree with leaving () out for the DSL usage. Are there any such instances of DSL usage within conditionals (if/unless/while...)? If not, would you be in favor if we restrict the enforcement to conditionals only?
On Mon, Aug 11, 2014 at 7:00 AM, Henrik Lindberg <[email protected]> wrote: > On 2014-11-08 2:01, Kylo Ginsberg wrote: >> >> On Sat, Aug 9, 2014 at 9:45 AM, Henrik Lindberg >> <[email protected] <mailto:[email protected]>> >> >> wrote: >> >> On 2014-09-08 24:13, Andy Parker wrote: >> >> On Fri, Aug 8, 2014 at 3:11 PM, Rahul Gopinath >> <[email protected] <mailto:[email protected]> >> <mailto:[email protected] <mailto:[email protected]>>> >> wrote: >> >> While correcting AndOr, I come across methods calls such as >> `if >> value.is_a? FixNum or value.is_a? Integer` >> >> How should we parenthesize it? is it `(value.is_a? FixNum) || >> (value.is_a? Integer)` or should it be `value.is_a?(FixNum) >> || >> value.is_a?(Integer)` ? >> >> >> value.is_a?(FixNum) >> >> Parens around the method arguments are the clearest fix and we >> should >> put them in everywhere IMO :) >> >> >> +1, except in internal DSL like logic where it reduces readability >> >> >> I definitely agree on the parentheses example above. >> >> Wrt requiring parens around method arguments *everywhere*, I have to >> admit I've wanted that at times when reading puppet code, but I also >> suspect it would be very high touch and perhaps controversial. >> >> And it sounds like we don't have consensus on that one. Henrik, can you >> give an example or two where it would reduce readability? That might >> help guide the discussion a bit. >> >> > The first that comes to mind is spec tests - it feels like you are using a > different language than ruby, but it is really a bunch of method calls > without parentheses. > > i.e. do you want to write it like this? > > context("this context") do > it("the thingy can ...") do > ... > end > end > > IMO, that adds no value at all. > > In models: > > class Program < PopsObject > contains_one_uni 'body', Expression > has_many 'definitions', Definition > has_attr 'source_text', String > has_attr 'source_ref', String > has_many_attr 'line_offsets', Integer > has_attr 'locator', Object > end > > In the new function API: > > dispatch :handle_enumerable do > param 'Any', :enumerable > param 'Hash', :options > end > > Enforcing () in places like these sort of goes against the idea of using an > internal DSL. > > > - henrik > > -- > > Visit my Blog "Puppet on the Edge" > http://puppet-on-the-edge.blogspot.se/ > > -- > 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 view this discussion on the web visit > https://groups.google.com/d/msgid/puppet-dev/lsaiai%24f9r%241%40ger.gmane.org. > > For more options, visit https://groups.google.com/d/optout. -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/CA%2BemFfxoE2yP50rPua17r9gn7_%3DCzwhsWH6WObjEA78Y7MF1zg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
