gnat writes "Damian's writing a series of articles parallel to Larry's Apocalypses. These "Exegesis" articles will show full perl6 programs, with commentary explaining the new features. The first Exegesis (numbered 2, to keep in sync with Larry) shows a perl6 version of a binary tree program from the Perl Cookbook."
hm
pudge on 2001-05-16T02:35:12
Can someone do an exegetical study of your exegesis?
I thought an exegesis
jjohn on 2001-05-16T11:28:10
was an operation to remove one's liver. Go figure.
Question
pudge on 2001-05-16T12:51:54
Is
$val is Found(0) the same as
$val.Found = 0? If so, wouldn't that be easier to write and read? Of course, I realize that in the context, putting it together in one statement like
%node{VALUE} = $val is Found(0) would be harder the other way, but I would probably want to just put it into two statements, I think. Please learn me.
Use 6.0 required?
n1vux on 2001-05-16T17:56:33
Far be it from me to quibble in matters of perlescent theology with Damian Cardinal Conway, Patriarch of the See of the Southern Cross and Legate Plenipotentiary [to stretch the revealed-religion metaphor past it's limit of elasticity] ... but ...
Apocalypse 1 spoke of needing some form of declaration, syntax TBD, that Perl6 syntax as opposed to backwards-compatible Perl5 syntax was to be in force. Shouldn't each Exegisis start with "use 6.0;", since that's the presumptive syntax (Larry's e.g. in Ap.1) until/unless superceded in later Apocalypses?
Ap.1,RFC16
For a programmer to enter nirvana, first unravel a camel and thread it through the eye of a needle.
-- My first interesting Perl program removed session-threading from webpages to recover lost versions for the graphics designers. So the memo documenting it was subtitled "unthreading the camel". So I'm amused by the ongoing revealed religion schtick.
Cheers,
-- Bill
Re:Question
Damian on 2001-05-16T20:14:24
$val is Found(0) has the same
side-effect as
$val.Found = 0, but not the same
evaluation. They both set the property, but the first form evaluates to an alias to its left operand, and the second evaluates to an alias to the property.
In addition -- for obvious reasons -- you can use the is syntax in declarations, but not the . syntax:
my $PI is constant = 3;
And, of course, is chains in a usefully different way from .
Re:Use 6.0 required?
Damian on 2001-05-16T20:42:12
Apocalypse 1 spoke of needing some form of declaration, syntax TBD, that Perl6 syntax as opposed to backwards-compatible Perl5 syntax was to be in force.
My understanding is that that notion is still in effect for modules and classes, but has been Rule-Two'd for the main program.
Mainly because it would be a huge pain in the butt. I mean: to have to explicitly tell the Perl 6 compiler every single time that a simple Perl 6 script in standard Perl 6 syntax is written in (can you believe it!) Perl 6. ;-)
Instead, I think you'll find there will be some kind of use Perl5 pragma.
Damian
Re:Use 6.0 required?
gnat on 2001-05-17T16:16:25
Nobody knows how this is going to play out, but my
guess is that we'll go down the easy route of saying
#!/usr/bin/perl
is perl5 initially, while perl6 installs as
#!/usr/bin/perl6
This is what people did for about four years
with the changeover from perl5 to perl6.
Nat
Re:Use 6.0 required?
Elian on 2001-05-17T17:33:32
I don't know whether perl 5 or perl 6 syntax will be the default (and under what circumstances) but we'll definitely have something simple like a -5 or -6 switch to specify perl 5 or perl 6 mode (respectively) explicitly.
Re:Question
pudge on 2001-05-17T18:08:33
$val is Found(0) has the same side-effect as $val.Found = 0, but not the same evaluation. They both set the property, but the first form evaluates to an alias to its left operand, and the second evaluates to an alias to the property.
Yeah, that's what I figured. OK.
Re:Use 6.0 required?
pudge on 2001-05-17T18:10:03
Yeah. And my new system has perl 5.6.1 installed as perl6! (I've been meaning to flog the SA over that, but I've been bothering him enough lately.
:-)
Re:Use 6.0 required?
n1vux on 2001-05-17T19:44:01
Dropping the leading digit sounds like a Solaris thing. I heard someone else refer to 5.6.1 as Perl6 too -- a Solaris SA.
Re:Use 6.0 required?
n1vux on 2001-05-17T19:48:20
Ahh, that makes sense, thank you for explaining.
Add this to the timeline
persicom on 2001-05-18T14:03:19
Is this the first published instance of Perl6 code? Shouldn't we somehow mark the date? Or add it to the timeline....
darn, now where is that perl history page?
Re:Use 6.0 required?
ask on 2001-05-21T23:52:56
heh, Perl 5.x is so old now that people don't think the 5 means anything and just considers 5.6 to be the next major release, hence perl6.
:-)
- ask
Re:Add this to the timeline
ask on 2001-05-21T23:55:39
The history page is at (surprise!)
history.perl.org.
- ask