develooper Front page | perl.perl6.language | Postings from July 2005

Re: method calls on $self

Thread Previous | Thread Next
Robin Redeker
July 9, 2005 02:47
Re: method calls on $self
Message ID:
On Fri, Jul 08, 2005 at 08:50:35AM -0500, Jonathan Scott Duff wrote:
> On Fri, Jul 08, 2005 at 08:10:00AM +0200, Robin Redeker wrote:
> > And what will be the default syntax to call
> > a method on self? If everyone has completly other
> > preferences about this, for example this horrible ./method()
> > syntax, which completly wont fit into the language, 
> What a way to win friends!  Some of us find ./method() to fit just
> fine into the language and into use.

If telling my opinion is preventing us to become friends, i'm sorry for
I heard "some" people to complain about the ./method() syntax too.

> Does the "default" syntax really matter that much?   For your own
> code,
> 	use self "";
> is a small one-time cost to pay to get the syntax/semantics you want.
> Well, one-time cost per source file, but I can easily see that someone
> would build the scaffolding to let that be a one-time cost per site.
> (e.g. having a site-wide policy for perl6 has been mentioned before)

Maybe per .-file in the home-directory, like .vimrc ...

But i don't think that pushing everyone into his own language is the
purpose of designing a new one.

Also, i would be VERY curious how that 'self' module looks like.
Is there already a spec that describes how to change the parser on the
fly in such a module?

And how many people, who dislike the ./-syntax will be actually able to
write such a module? Or a module that works around another
syntax design quirk in perl6?

If the majority really wants ./, okay, i am fine with it.
My own opinion is, that ./ doesn't fit into the language very
much, at least not with a 'but it looks like shell
programming'-argument. Perl6 isn't shell programming, and ./ has a
completly different meaning (at least for me, and others i heard about
this issue) in perl.

> The only place I can see a problem is when reading other people's code,
> but then I expect that the hue and cry would be such that *someone*
> would write a tool to make it easy to transmogrify other perl6 dialects
> into the one they particularly like to use. And given how well perl6
> will grok perl6, such a tool shouldn't be too difficult to write.

Java-people also invent new tools to ease the pain of writing java-code.
But Perl6 isn't as static as Java (of course) and will mutate into 
a custom language for any dedicated Perl6 programmer.
It will be hard/easy to read someones elses Perl6 code regardless of the 
self->method() syntax.

I don't think that this kind of syntax-translation is so very easy...
and what about a perl6 program in a cvs. You probably want to change
the code you read...

> > whose favorite will be the default? None at all? An explicit call,
> > like $?SELF.method () ?
> Were I $Larry, that's what I'd do if people kept bringing it up and
> carping about the syntax that works--decide there's no default and you
> *always* have to be explicit in one way or another.
> Boy am I glad I'm not $Larry  ;-)

I would be completly fine with $?SELF.method () as default.

> > Will we end in something like 
> > 
> > use
> > my_completly_custom_syntax_and_grammar_which_has_nothing_to_do_with_perl6_anymore;
> If that's your desire, perl ain't stopping you  :-)

I wanted to express my fear that perl6 might
push me and others to write their own language plugin
to work around suboptimal design in perl6.


-- /
Robin Redeker

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About