> -----Original Message-----
> From: Scott Walters [mailto:[EMAIL PROTECTED]
> Sent: Thursday, 15 April, 2004 03:27 PM
> To: [EMAIL PROTECTED] Juerd
> Cc: [EMAIL PROTECTED]
> Subject: Re: backticks
>
>
> Let me summerize my undestanding of this (if my bozo bit isn't already
> irrevocably set):
>
> * %hash<<foo>> retains the features of P5 $hash{foo} but does
> nothing to counter the damage of removal of barewords

Actually, it solves the "bare" words problem -- the << >> is a quoting
syntax, so %hash<foo> is akin to
%hash{'foo'}.

As I understand Juerd, the objection is the number of finger movements
required. For me, on a US-intl keymap with a decent keyboard, the guillemets
are alt+[ and alt+] respectively, which is a pretty low cost. The high cost
is the behavior of ' and " in the same keyboard mode, which act as composing
characters. For this reason, I'm assuming that some clever windows hacker
will provide a US-perl6 keyboard definition soon after p6 is available, if
not sooner. (I'd do it myself, frankly, if I had the documentation for that
stuff. :-(

> * %hash`foo occupies an important nitch, trading features (slice,
> autovivication) to optmize for the common case, undoing the pain of the
loss of barewords,
> serving as even a superior alternative

It *would* occupy a niche, were it incorporated. Subjunctivity is still
appropriate.

> * %hash`foo and %hash ~ `ls` can coexist without breaking anything as this
is currently
> illegal, unused syntax

Correct as I understand it, and certainly true in p5, per Matthijs.

> * %hash`foo can be added by the user, but users are seldom aware of even a
small fraction of
> the things on CPAN and there is a sitgma against writing non-standard code

Probably true. I'm frequently amazed with the things that are dredged up
from CPAN. And I certainly don't  download things from CPAN to change my
syntax, so I can see where others wouldn't, either. OTOH, Juerd could do so,
and could code all his code with it, and could "virally" infect everyone
else by sending out scads of useful scripts, all of which required C<use
HashTicks;>.

> * %hash`s is an example of a small thing that would be easy to implement
in core
> but would be used constantly (if JavaScript is any indication, every few
lines),
> giving a lot of bang for the buck

I disagree with this. I, for one, would never use it. (I don't object to its
inclusion, since my preferred alternative would remain available:
%hash{$foo} or %hash{'foo'}. But I don't like it visually, and I'm too used
to ` as a quoting character to feel comfortable with this usage.)

Also, this reminds me of the old namespace syntax: $package'var. I'm glad
that's gone, too.

> * Rather than eliciting public comment on %hash`foo (and indeed
%hash<<foo>>)
> the proposal is being rejected out of hand (incidentally, the mantra of
the Java
> community Process seems to be "you don't need X, you've got Y",
> and it took .Net before they woke up and realized that maybe they should
> consider their community in the community process - after ignoring a
universal call for
> generics for over 5 years it's little wonder .Net ate their cake)

Actually, it seems to me that there has been public comment. Some names that
I recognize have come out on both sides of the issue, indicating that within
the current "established" p6l posters there is disagreement on the issue.

Juerd & Matthijs have pointed out that the capability could be added with
minimal impact on people (like myself) who don't want to use the feature.

Simon has pointed out that (say it with me, everybody: 1 .. 2 .. 3 .. ) "It
doesn't have to go in CORE!"

So @Larry (of whom chromatic, a detractor, is one) or $Larry will make a
determination of digital direction, directly, and the dilemma will be
decided. (Sorry. :-)

Your feelings about Sun's inability to run an open community
notwithstanding, the p6l list appears to be working fine. People have said
that many of my suggestions were stupid, too, but rejection is not the same
as refusal to listen.

=Austin

>
> -scott
>
>
>
> On  0, "[EMAIL PROTECTED] Juerd" <[EMAIL PROTECTED]> wrote:
> >
> > Aaron Sherman skribis 2004-04-15 14:29 (-0400):
> > > On Wed, 2004-04-14 at 16:56, Juerd wrote:
> > > > How many of those backticks
> > > Note, those weren't backticks, those were programs. There were 123
> > > PROGRAMS that used backticks or equivalent syntax.
> >
> > I said backticks, and I meant backticks. I'm not sure why there is
> > confusion over this.
> >
> > Perhaps this can disambiguate: how many of those backticks in those 123
> > programs.
> >
> > > > And how often are simple hash subscripts used?
> > > Very often.
> >
> > Many times as often as qx and friends?
> >
> > > Security is not an issue for this code.
> >
> > It should be.
> >
> > > code review? You made and assertion: backticks aren't used much. That
> > > assertion is faulty.
> >
> > I didn't formulate my statement carefully enough. I should have said:
> > "as much as hash subscription".
> >
> > > Executing external code is commonplace, and probably done more often
> > > than method invocation in the wild!
> >
> > I want to doubt that. Or better: help change that.
> >
> > > > It's just one keyword and a set of quotes more: $( readpipe "pwd" )
> > > And thus, it is not like the bash/zsh style syntax in the least.
> >
> > Why should Perl have to limit itself to shell-like syntax? It doesn't do
> > that with if-constructs, foreach-loops, procedures, etcetera, etcetera,
> > etcetera.
> >
> > > Unless there is substantially new information in this thread, I think
> > > you have presented your case for yet another new subscripting syntax.
> >
> > I think I have presented two cases. The removal of `` and the
> > introduction of %hash`key. Either can be implemented without breaking
> > the other, though I obviously think both letting `` go and introducing
> > the infix ` is better.
> >
> >
> > Juerd

Reply via email to