[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

Re: [MacPerl] Introduction



On Sun, 04 Jul 1999 20:49:43 -0700, madame philosophe wrote:

>I also recognize that people are recommending I don't go OO so fast, but
>I guess my premise is that if I learn the OO aspects(which I've wanted
>to understand even before wanting to learn Perl) then going "procedural"
>will be easy. Going from procedural to OO, I hear can be difficult to
>get your head around.

Oh. If you want to use other people's OO language, fine. But I'm pretty
sure that as soon as you want to write your own classes, you NEED to be
familiar with Perl's procedural behaviour. That is because Perl's OO is
a mere layer of syntactic sugarr, which gets peeled off before the
methods are called.

As for some OO-oriented modules, such as HTML::Parser... you probably
need a firm grasp on Perl's internals on OO, before you even can start
effectively using it (= subclassing).

If you really insist on learning OO first, I'd think Perl is not the
best language choice. OO in Smalltalk is really straightforward, on
paper, but I must confess that I haven't seen an actual free Smalltalk
implemetation that is actually fun to work with. Python, too, might be a
good choice, as it is a rather simple language, where OO is not as "raw"
as in Perl.

>Now before I start a holy war (which I don' really want to do here) I
>just want to use perl for doing CGI stuff and I know that there are tons
>of modules out there to use. And if I want to do that I will need to
>understand the OO parts of Perl, or do I? I'm certain that someone will
>pipe in right about here.

Uh... yes. Analyzing the internals of CGI.pm may be a terrible way to
learn Perl, because that module uses quite a bit of obscure tricks, like
the way it uses the Autoload mechanism. You'd better not expose yourself
to that, until you're already *very* familiar with Perl.

I don't use CGI.pm myself, because it contains tons of stuff that I
don't need, the stuff for construction HTML forms by code, for example;
and I do constantly need to use some other basic stuff that isn't in
there, such as HTML-encoding.

I prefer to use a template mechanism to build my HTML. That approach
should appeal a lot to people like you (= people with an artistic
angle), because I can let other people design the web pages, and my Perl
stuff merely fills in values in these HTML templates, before sending
them to the browser. In fact, that is the only way I can imagine doing
this kind of work.

	Bart.

===== Want to unsubscribe from this list?
===== Send mail with body "unsubscribe" to macperl-request@macperl.org