Fred Heutte <[EMAIL PROTECTED]> writes:

> A vote against the proposed switches, for an unbearably lazy (ok,
> "selfish") reason.  Having to use the shift key with any non-alphanumeric
> keypress always feels like a lot of extra work.  This is why I have long
> avoided underscores in variable names.  (This is the same reason
> I avoid => which not only adds another keystroke beyond , but also has
> the dreaded punctuation-key-shift.  I'm not arguing this is *better*,
> just more convenient for me personally.  Or maybe it's just that I prefer
> not to hang around too much with shifty characters.)  

The 'fat-comma' actually saves keystrokes and looks good for creating
paired data.  From perlop:

  The => digraph is mostly just a synonym for the comma
  operator.  It's useful for documenting arguments that come
  in pairs.  As of release 5.001, it also forces any word to
  the left of it to be interpreted as a string.
 
> Having used . for string concats for 10 years, I could adjust to ~
> but good golly is that annoying.  Also it does detract from readability
> a little.
> 
> $a = "my" . $strings . join(@together) ;
> 
> $a = "my" ~ $strings ~ join(@together) ;

Actually using a period to mean "push these things together" rather
than "full-stop" always seemed odd to me.  I use the concat operator
very rarely.  I would write the above:

  $a = "my $strings @together";

(You weren't careful about spaces, but you need to be when using
concat.  String interpolation is easier to get right the first time.
Also I don't think your join is what you want.)

If I had to choose between . and ~, I'd take the tilde.  I wouldn't
mind if it went away altogether, however -- I only use it to simulate
function interpolation:

  $prompt = scalar(getpwuid $>) . "\n\$ ";

I'd rather write:

  $prompt = "&scalar(getpwuid $>)\n\$ ";

> I don't mind ~ as the binding operator.  It makes me go slower and
> think, aha! drive carefully:
> 
> $throttle =~ s/regex ahead/downshift brain/ ;

Jon

Reply via email to