<awfully quiet....>

29 views
Skip to first unread message

Dulcimer

unread,
May 20, 2003, 11:46:30 AM5/20/03
to perl6-l...@perl.org

So, just to stir the pot, is anybody working on a simple introductory
tutorial for P6 yet?

I was thinking that writing one might actually get me up to speed,
because I could post it in pieces here, and be clubbed when I did it
wrong, so that the end result would be a usable tutorial, and that I'd
learn the new Perl.

I know there are better heads for such a thing, but they might all be
doing better things. :)

Any input?

__________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.
http://search.yahoo.com

Michael Lazzaro

unread,
May 20, 2003, 7:11:15 PM5/20/03
to Hod...@writeme.com, perl6-l...@perl.org

On Tuesday, May 20, 2003, at 08:46 AM, Dulcimer wrote:
> So, just to stir the pot, is anybody working on a simple introductory
> tutorial for P6 yet?

There is indeed such an effort -- the docs group -- although it's more
along the lines of all-encompassing language documentation rather than
a single simple tutorial. The mailing list is

perl6-doc...@perl.org

See dev.perl.org for directions on joining up, and check the archives
to get up to speed.

Having said that, it's very, very quiet right now, primarily because
we're waiting for ...ahem... me to finish a large promised draft on A2
stuff dealing with types and context, some of which is still undecided
(see my prev messages on this list), and which will be finished
sometime after a few more things are decided and after our current
contracts here at work allow me some breathing room to look at it. But
there's plenty of stuff to write...

MikeL

Dave Whipp

unread,
May 21, 2003, 12:07:25 AM5/21/03
to perl6-l...@perl.org
Dulcimer wrote:
> So, just to stir the pot, is anybody working on a simple introductory
> tutorial for P6 yet?
>
> I was thinking that writing one might actually get me up to speed,
> because I could post it in pieces here, and be clubbed when I did it
> wrong, so that the end result would be a usable tutorial, and that I'd
> learn the new Perl.
>
> I know there are better heads for such a thing, but they might all be
> doing better things. :)
>
> Any input?

I saw MikeL's rely: and yes, p6.doc has been quiet of late. But some
comments wrt the idea of a tutorial...

The goal of a tutorial (for a language) is twofold: to enable a reader
to quickly get started, and to give the reader a feeling of the spirit
of the language.

My problem i'm that I'm not sure (yet) what the spirit of perl6 is. P5
was text processing and regexes. I see wonderful things in P6, but for a
tutorial you'd need to relegate most of them to the "advanced topics"
section.

Take objects. The expectation is that they will be central to P6. Does
this mean that the tutorial goes directly from hello-world to objects?
or does it discover control-flow and junctions first. (why do I group
these two? -- because the first junction is "if $a == 1 | 2", or
similar). Where are subs in the great scheme of things? do you present a
method as a sub plus an invocant; or a sub as a method without an
invocant?. Who knows: perhaps in 20 years time we'll look back on P6 as
the language of ubiquitous multithreading.

I've seen many language tutorials that are nothing more than a list of
features. Others tend to concentrate on the things that the author sees
as the clever things, and thus skimps on the fundamentals.

So a simple question: what is the spirit of Perl6? Summarize in three
words or less!


Dave.

Joseph F. Ryan

unread,
May 21, 2003, 2:57:04 AM5/21/03
to Dave Whipp, perl6-l...@perl.org
Dave Whipp wrote

> So a simple question: what is the spirit of Perl6? Summarize in three
> words or less!


As a big fan of RFC 28, I think the spirit of Perl6 should be the same
as the spirit of Perl5:

To make the easy things easy, and the hard things possible. (-:

- Joe

Michael Lazzaro

unread,
May 21, 2003, 1:04:51 PM5/21/03
to Dave Whipp, perl6-l...@perl.org

On Tuesday, May 20, 2003, at 09:07 PM, Dave Whipp wrote:
> So a simple question: what is the spirit of Perl6? Summarize in three
> words or less!

Yeah, that. How 'bout:

Perl6: It's Perl++
or
Better Than Perl5
or
A Better Java
or
A Better (insert OO language here)
or
La'Damian's Revenge
or
Perl: The Quickening
or
Perl TNG
or
Perl6: Now that Buffy's over, it's the only thing a hacker has left in
their sorry, empty life, and by the way I wish they would have just
kept the series going, and maybe made Dawn or somebody the new slayer,
but am I the only one who noticed that in the final episode they killed
off, what, several hundred thousand people and nobody said a damn peep
about it, and were all tra-la-la, and what's with that?

Oops, that last one is too long.

More seriously, sort of: you're so right, there's *so* many different
ways to describe it, which I bet will result in a whole shelf-full of
good deadtree books on the subject. You can play up the easy scripting
aspects, for people who want to use it for that. Or play up the new
regex stuff, which is going to be a killer app in and of itself. Or
play up application-oriented strategies, since I fully hope/anticipate
it to be as much a "real" app development environ as Java or C++ (well,
hopefully more 'real' than Java, given my experiences with Java). Or
the OO nature, and how it pervades even the most primitive types.

I expect people will make a metric ton of tutorials, each tutorializing
different things, some of them official and some not. But I can easily
see ten books, minimum, regardless of how encompassing the 'official'
docs turn out to be.

MikeL

Dulcimer

unread,
May 21, 2003, 1:03:52 PM5/21/03
to Dave Whipp, perl6-l...@perl.org
> > So, just to stir the pot, is anybody working on a simple
> > introductory tutorial for P6 yet?
> > [ . . . ]
>
> I saw MikeL's rely: and yes, p6.doc has been quiet of late. But some
> comments wrt the idea of a tutorial...

Hasn't come in for me yet, but I'll be watching.



> The goal of a tutorial (for a language) is twofold: to enable a
> reader to quickly get started, and to give the reader a feeling
> of the spirit of the language.

Good synopsis. I'll go for that.

> My problem i'm that I'm not sure (yet) what the spirit of perl6 is.

I'd say that it's different for different people, but that in general
it's not going to be so different from P5. There will be a lot of new
toys and altered implementations, but the *feel* of the language
probably won't change that much, aside from being a little more
complete.

> P5 was text processing and regexes. I see wonderful things in P6,
> but for a tutorial you'd need to relegate most of them to the
> "advanced topics" section.

P5 was a lot more than that, but those are the heart of it I suppose.
Why should P6 be different? Yes, there will be a lot more tools and
toys, but a lot of people will never use most of them. I doubt anyone
will ever make common use of every feature, even Damian. Most of the
language changes will fall under "advanced topics", just the way OO in
P5 usually did, even though it's not that hard.

> Take objects. The expectation is that they will be central to P6.
> Does this mean that the tutorial goes directly from hello-world to
> objects? or does it discover control-flow and junctions first.

I'd say a tutorial should go over the things that will let a beginner
get things done first. A grasp of fundamentals is essential, though you
don't have to understand the underlying concepts at first. Basic
syntax, operators, and common tools such as print (which isn't an
operator to most beginners :) should be the first meat, and expansion
from that should be based on what makes the simple things simple first,
and then *later* what makes the hard thiongs possible.

> (why do I group these two? -- because the first junction is
> "if $a == 1 | 2", or similar).

But I think junctions are an advanced topic, if a less complicated one.
Show how to do the obvious and expected things first. *Then* show how
they can be expanded and used for coolness, once the reader has a grasp
on how to do the things he already *expects* to be there.

> Where are subs in the great scheme of things? do you present a
> method as a sub plus an invocant; or a sub as a method without an
> invocant?. Who knows: perhaps in 20 years time we'll look back on P6
> as the language of ubiquitous multithreading.

Subs should definitely come before methods in a tutorial, even if the
language doesn't use them that way, because a lot of Perl users will
never want or need OO, even if it's fundamental to the language.
There's nothing you can do with OO code than you can't also achieve
with other means, though I prefer an OO approach most of the time.
Still, a thorough tutorial should edge slowly into such matters. First
demonstrate how to do things with simple procedural code. Then abstract
some code out into a subroutine. Later worry about modules. Classes
should build on modules, objects from classes, methods from objects.

Think like the novice you obviously aren't. :)

> I've seen many language tutorials that are nothing more than a
> list of features. Others tend to concentrate on the things that
> the author sees as the clever things, and thus skimps on the
> fundamentals.

lol -- I have a friend who won't buy anything but feature-list books,
but personally I'd rather see something a little more thorough.
Unfortunately, most people want concise -- "get to the point". They
don't care about why it works, they just want a recipe. That sort of
thinking hurts me, but we need to accomodate it, anyway. A step-by-step
progression through the *use* of the language would be a lot more
*useful* to most people than an explanation of Parrot. :)

Initially, I don't see a P6 tutorial as being any different from a P5
tutorial, except that the sigils would be a bit different when
accessing elements of sets. It would diverge as it progressed, but
first show the user how to write functional scripts. Then show them how
to debug them -- warnings and strict as habits to develop -- and
progress from there.

BTW, I think that if the tutorial starts early with both warnings and
full stricture enabled, it will make things simpler and clearer and
teach better technique. Later "advanced topics" can turn these features
off lexically to perform bits of black magic, which teaches good
information without having to retrain the programmer's thinking. Most
tutorials I've seen tend to start with simple autovivifications, which
do make for simpler examples, but also for more confusion in the long
run. my() should be an early lesson in scope.



> So a simple question: what is the spirit of Perl6? Summarize in three
> words or less!

Get It Done. :)

Sam Vilain

unread,
May 21, 2003, 5:02:51 PM5/21/03
to Michael Lazzaro, Dave Whipp, perl6-l...@perl.org
On Thu, 22 May 2003 05:04, Michael Lazzaro wrote:
> A Better Java
> or
> A Better (insert OO language here)

A better Java than C#,
A better Lisp than Scheme.
A better Makefile than Prolog,
A better macro assembler than C.
A worse ADA than Python,
A better awk than Perl5.

With apologies to poets worldwide.
--
Sam Vilain, s...@vilain.net

Things are more like they are now than they ever were before.
DWIGHT D EISENHOWER

Dulcimer

unread,
May 21, 2003, 5:13:04 PM5/21/03
to perl6-l...@perl.org

--- Sam Vilain <s...@vilain.net> wrote:
> On Thu, 22 May 2003 05:04, Michael Lazzaro wrote:
> > A Better Java
> > or
> > A Better (insert OO language here)
>
> A better Java than C#,
> A better Lisp than Scheme.
> A better Makefile than Prolog,
> A better macro assembler than C.
> A worse ADA than Python,
> A better awk than Perl5.
>
> With apologies to poets worldwide.

lol -- keep your day job. :)

Arcadi Shehter

unread,
May 21, 2003, 5:17:19 PM5/21/03
to Sam Vilain, Michael Lazzaro, Dave Whipp, perl6-l...@perl.org

... a better perl then perl

arcadi


Simon Cozens

unread,
May 21, 2003, 5:32:36 PM5/21/03
to perl6-l...@perl.org
ydb...@yahoo.com (Dulcimer) writes:
> So, just to stir the pot, is anybody working on a simple introductory
> tutorial for P6 yet?

http://www.oreilly.com/catalog/perl6es/ is coming out next month, and
is "essential reading for anyone committed to the Perl community".

--
buf[hdr[0]] = 0; /* unbelievably lazy ken (twit) */ - Andrew Hume

Andrew Wilson

unread,
May 21, 2003, 6:31:13 PM5/21/03
to perl6-l...@perl.org
On Wed, May 21, 2003 at 10:04:51AM -0700, Michael Lazzaro wrote:
> Perl6: Now that Buffy's over, it's the only thing a hacker has left in
> their sorry, empty life, and by the way I wish they would have just
> kept the series going, and maybe made Dawn or somebody the new slayer,
> but am I the only one who noticed that in the final episode they killed

This is an international list. Lots of us still haven't seen the last
episode and don't want to know what happens. Apparently they killed
something or somebody, fortunately I managed to stop reading before you
managed to spoil the finale of one of my all time favourite shows.

Please do not post Buffy or Angel spoilers to this list.

Thank you.

andrew
--
Cancer: (June 22 - July 22)
You will be the first person in almost three millennia whom the gods see
fit to punish for an astounding lack of hubris.

Reply all
Reply to author
Forward
0 new messages