Rocksolid Light

News from da outaworlds

mail  files  register  groups  login

Message-ID:  

You will always get the greatest recognition for the job you least like.


comp / comp.lang.perl.misc / Re: on Perl

SubjectAuthor
* Re: on PerlJavier
`* Re: on PerlLawrence D'Oliveiro
 `* Re: on PerlBen Bacarisse
  `* Re: on PerlLawrence D'Oliveiro
   `* Re: on PerlKeith Thompson
    `* Re: on PerlLawrence D'Oliveiro
     `- Re: on PerlRainer Weikusat

1
Subject: Re: on Perl
From: Javier
Newsgroups: comp.unix.shell, comp.unix.programmer, comp.lang.misc, comp.lang.perl.misc
Date: Tue, 16 Apr 2024 20:47 UTC
References: 1 2 3 4 5 6 7 8 9
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!news.gegeweb.eu!gegeweb.org!usenet-fr.net!feeder1-2.proxad.net!proxad.net!feeder1-1.proxad.net!193.141.40.65.MISMATCH!npeer.as286.net!npeer-ng0.as286.net!peer01.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!Xl.tags.giganews.com!local-1.nntp.ord.giganews.com!nntp.brightview.co.uk!news.brightview.co.uk.POSTED!not-for-mail
NNTP-Posting-Date: Tue, 16 Apr 2024 20:47:47 +0000
From: invalid@invalid.invalid (Javier)
Subject: Re: on Perl
Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc,comp.lang.perl.misc
References: <uu54la$3su5b$6@dont-email.me> <87edbtz43p.fsf@tudado.org> <0d2cnVzOmbD6f4z7nZ2dnZfqnPudnZ2d@brightview.co.uk> <20240408075547.000061e8@gmail.com> <g52cnWOOwoz_son7nZ2dnZfqnPWdnZ2d@brightview.co.uk> <uvbe3m$2cun7$1@dont-email.me> <Mkidnafag8vlooH7nZ2dnZfqn_idnZ2d@brightview.co.uk> <pan$c8c3e$b0e492b3$c544c27e$d72bff90@invalid.invalid> <uvk8o6$h2pg$3@dont-email.me>
Message-ID: <dRicnfsW0phufoP7nZ2dnZfqnPednZ2d@brightview.co.uk>
Date: Tue, 16 Apr 2024 20:47:47 +0000
Lines: 29
X-Usenet-Provider: http://www.giganews.com
X-Trace: sv3-LCbsiWK6yvULer1Ajw9D3Yj0xBhV5pswW/oMp4VyIMODluqCeD3n4YuNOnoD/zSX45z288A2VzFE9MG!JLbb2ldQO/wO8f41S8CJTh+HP2iMUciwkBsjkkyvDXBjHvBZ03PfLEhx2+gxJ4/xT2BNm9FYlndI!I7wPVukzlrpFydDuBBzKE8sHh5o=
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
X-Received-Bytes: 2679
View all headers

>>>> I've programmed in Perl but I'm no Perl-programmer notwithstanding.
>>>> Some more or less obvious reasons I see...
>>>> Abstraction of diverse Unix utilities' interfaces.
>>>
>>> no other language comes close in conciseness when it comes to
>>> text processing and interacting with the OS (filesystem, pipes,..)
>>
>> .. i could imagine e.g. a library for a language getting there.
>
> Especially a language that is particularly versatile and adaptable to
> defining DSLs.

Ruby is a good example of that. It mixes Lisp (useful for making DSLs)
and the good parts of Perl (regexps, text processing).
But Ruby only filled (partially) the niche of programming web frameworks.
And I say partially because perl-based cpanel is still being used nowadays.

But for system automation tasks in a Posix OS, when you want to
go above the level of a simple shell script and use complex data
structures, Perl is the only language that fills that gap, any other
language is oververbose (lacks conciseness).

And for whatever reason no other language has filled that gap.
Nobody has even attemped to create another language for the task.
So 37 years after its creation, learning Perl it's still useful.

--
Brevity is the best recommendation of speech, whether in a senator or an orator.
Marcus Tullius Cicero

Subject: Re: on Perl
From: Lawrence D'Oliv
Newsgroups: comp.unix.shell, comp.unix.programmer, comp.lang.misc, comp.lang.perl.misc
Organization: A noiseless patient Spider
Date: Wed, 17 Apr 2024 03:14 UTC
References: 1 2 3 4 5 6 7 8 9 10
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc,comp.lang.perl.misc
Subject: Re: on Perl
Date: Wed, 17 Apr 2024 03:14:53 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 11
Message-ID: <uvnerd$1ct1p$1@dont-email.me>
References: <uu54la$3su5b$6@dont-email.me> <87edbtz43p.fsf@tudado.org>
<0d2cnVzOmbD6f4z7nZ2dnZfqnPudnZ2d@brightview.co.uk>
<20240408075547.000061e8@gmail.com>
<g52cnWOOwoz_son7nZ2dnZfqnPWdnZ2d@brightview.co.uk>
<uvbe3m$2cun7$1@dont-email.me>
<Mkidnafag8vlooH7nZ2dnZfqn_idnZ2d@brightview.co.uk>
<pan$c8c3e$b0e492b3$c544c27e$d72bff90@invalid.invalid>
<uvk8o6$h2pg$3@dont-email.me>
<dRicnfsW0phufoP7nZ2dnZfqnPednZ2d@brightview.co.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 17 Apr 2024 05:14:53 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="eab0799947e46f7ee0d29068ff6512f6";
logging-data="1471545"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+EXP1RhtH1fVZW7+XIaz+O"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:5b5VcsIXmg1EyitSry/f4qsSCTI=
View all headers

On Tue, 16 Apr 2024 20:47:47 +0000, Javier wrote:

> But for system automation tasks in a Posix OS, when you want to go above
> the level of a simple shell script and use complex data structures, Perl
> is the only language that fills that gap, any other language is
> oververbose (lacks conciseness).

Still some limitations in its data structures, though. I see Perl 5.38 has
added an “experimental” class feature, but it doesn’t do multiple
inheritance or metaclasses. Also I’m not sure if classes are first-class
objects or not.

Subject: Re: on Perl
From: Ben Bacarisse
Newsgroups: comp.unix.shell, comp.unix.programmer, comp.lang.misc, comp.lang.perl.misc
Organization: A noiseless patient Spider
Date: Wed, 17 Apr 2024 17:04 UTC
References: 1 2 3 4 5 6 7 8 9 10 11
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ben.usenet@bsb.me.uk (Ben Bacarisse)
Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc,comp.lang.perl.misc
Subject: Re: on Perl
Date: Wed, 17 Apr 2024 18:04:57 +0100
Organization: A noiseless patient Spider
Lines: 27
Message-ID: <87jzkvor7q.fsf@bsb.me.uk>
References: <uu54la$3su5b$6@dont-email.me> <87edbtz43p.fsf@tudado.org>
<0d2cnVzOmbD6f4z7nZ2dnZfqnPudnZ2d@brightview.co.uk>
<20240408075547.000061e8@gmail.com>
<g52cnWOOwoz_son7nZ2dnZfqnPWdnZ2d@brightview.co.uk>
<uvbe3m$2cun7$1@dont-email.me>
<Mkidnafag8vlooH7nZ2dnZfqn_idnZ2d@brightview.co.uk>
<pan$c8c3e$b0e492b3$c544c27e$d72bff90@invalid.invalid>
<uvk8o6$h2pg$3@dont-email.me>
<dRicnfsW0phufoP7nZ2dnZfqnPednZ2d@brightview.co.uk>
<uvnerd$1ct1p$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 17 Apr 2024 19:05:11 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="39e43a1f7f1a3f90c725b40bf55e0b25";
logging-data="1812256"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/pPUKBCHFKRBXFyI2+K5M60SYT3DkNhNg="
User-Agent: Gnus/5.13 (Gnus v5.13)
Cancel-Lock: sha1:QSQ34foFLy2RC7BHXPjN3Cgr3tY=
sha1:FkO/xT3ag1aYX1WV2RMzu614NdU=
X-BSB-Auth: 1.676737456c9647de2875.20240417180457BST.87jzkvor7q.fsf@bsb.me.uk
View all headers

Lawrence D'Oliveiro <ldo@nz.invalid> writes:

> On Tue, 16 Apr 2024 20:47:47 +0000, Javier wrote:
>
>> But for system automation tasks in a Posix OS, when you want to go above
>> the level of a simple shell script and use complex data structures, Perl
>> is the only language that fills that gap, any other language is
>> oververbose (lacks conciseness).
>
> Still some limitations in its data structures, though.

Such as? (I'm not disagreeing -- every languages have "limitations" --
I'm just trying to find out what you mean by a limitation in Perl's data
structures.)

> I see Perl 5.38 has
> added an “experimental” class feature, but it doesn’t do multiple
> inheritance or metaclasses.

Perl has had support for object-oriented programming (with multiple
inheritance) for many years -- too many for me to remember.

> Also I’m not sure if classes are first-class
> objects or not.

--
Ben.

Subject: Re: on Perl
From: Lawrence D'Oliv
Newsgroups: comp.unix.shell, comp.unix.programmer, comp.lang.misc, comp.lang.perl.misc
Organization: A noiseless patient Spider
Date: Wed, 17 Apr 2024 23:23 UTC
References: 1 2 3 4 5 6 7 8 9 10 11 12
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc,comp.lang.perl.misc
Subject: Re: on Perl
Date: Wed, 17 Apr 2024 23:23:59 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 6
Message-ID: <uvplme$1rupi$2@dont-email.me>
References: <uu54la$3su5b$6@dont-email.me> <87edbtz43p.fsf@tudado.org>
<0d2cnVzOmbD6f4z7nZ2dnZfqnPudnZ2d@brightview.co.uk>
<20240408075547.000061e8@gmail.com>
<g52cnWOOwoz_son7nZ2dnZfqnPWdnZ2d@brightview.co.uk>
<uvbe3m$2cun7$1@dont-email.me>
<Mkidnafag8vlooH7nZ2dnZfqn_idnZ2d@brightview.co.uk>
<pan$c8c3e$b0e492b3$c544c27e$d72bff90@invalid.invalid>
<uvk8o6$h2pg$3@dont-email.me>
<dRicnfsW0phufoP7nZ2dnZfqnPednZ2d@brightview.co.uk>
<uvnerd$1ct1p$1@dont-email.me> <87jzkvor7q.fsf@bsb.me.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 18 Apr 2024 01:23:59 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="ec6fcf3bb75b95711759fde7cd91a1dc";
logging-data="1964850"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19N70JEPQQxxl7nM6splTo0"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:Brkna0nP0fpY1Dvq2x7+a1faJL0=
View all headers

On Wed, 17 Apr 2024 18:04:57 +0100, Ben Bacarisse wrote:

> Perl has had support for object-oriented programming (with multiple
> inheritance) for many years -- too many for me to remember.

Then why this new “class” thing in 5.38?

Subject: Re: on Perl
From: Keith Thompson
Newsgroups: comp.unix.shell, comp.unix.programmer, comp.lang.misc, comp.lang.perl.misc
Organization: None to speak of
Date: Wed, 17 Apr 2024 23:59 UTC
References: 1 2 3 4 5 6 7 8 9 10 11 12 13
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith.S.Thompson+u@gmail.com (Keith Thompson)
Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc,comp.lang.perl.misc
Subject: Re: on Perl
Date: Wed, 17 Apr 2024 16:59:06 -0700
Organization: None to speak of
Lines: 27
Message-ID: <87le5br16d.fsf@nosuchdomain.example.com>
References: <uu54la$3su5b$6@dont-email.me> <87edbtz43p.fsf@tudado.org>
<0d2cnVzOmbD6f4z7nZ2dnZfqnPudnZ2d@brightview.co.uk>
<20240408075547.000061e8@gmail.com>
<g52cnWOOwoz_son7nZ2dnZfqnPWdnZ2d@brightview.co.uk>
<uvbe3m$2cun7$1@dont-email.me>
<Mkidnafag8vlooH7nZ2dnZfqn_idnZ2d@brightview.co.uk>
<pan$c8c3e$b0e492b3$c544c27e$d72bff90@invalid.invalid>
<uvk8o6$h2pg$3@dont-email.me>
<dRicnfsW0phufoP7nZ2dnZfqnPednZ2d@brightview.co.uk>
<uvnerd$1ct1p$1@dont-email.me> <87jzkvor7q.fsf@bsb.me.uk>
<uvplme$1rupi$2@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 18 Apr 2024 01:59:08 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="79ba507064daf9a3a41c021f3f9a882b";
logging-data="1974567"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/xx3/3r+kBHlWec57yFlV5"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Cancel-Lock: sha1:qA28PsXkIXxs5u1j0LOIwhM3ODY=
sha1:jJ1PDBsVgD8tLBTVSo8nYoVP6GQ=
View all headers

Lawrence D'Oliveiro <ldo@nz.invalid> writes:
> On Wed, 17 Apr 2024 18:04:57 +0100, Ben Bacarisse wrote:
>> Perl has had support for object-oriented programming (with multiple
>> inheritance) for many years -- too many for me to remember.
>
> Then why this new “class” thing in 5.38?

It's explained reasonably well at the top of the "perldoc perlclass"
documentation in Perl 5.38:

History
Since Perl 5, support for objects revolved around the concept of
*blessing* references with a package name. Such reference could then be
used to call subroutines from the package it was blessed with (or any of
its parents). This system, while bare-bones, was flexible enough to
allow creation of multiple more advanced, community-driven systems for
object orientation.

Class feature is a core implementation of class syntax which is familiar
to what one would find in other programming languages. It isn't a
"bless" wrapper, but a completely new system built right into the perl
interpreter.

--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
Working, but not speaking, for Medtronic
void Void(void) { Void(); } /* The recursive call of the void */

Subject: Re: on Perl
From: Lawrence D'Oliv
Newsgroups: comp.unix.shell, comp.unix.programmer, comp.lang.misc, comp.lang.perl.misc
Organization: A noiseless patient Spider
Date: Thu, 18 Apr 2024 01:33 UTC
References: 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Path: eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ldo@nz.invalid (Lawrence D'Oliveiro)
Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc,comp.lang.perl.misc
Subject: Re: on Perl
Date: Thu, 18 Apr 2024 01:33:42 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 16
Message-ID: <uvpt9m$2126r$1@dont-email.me>
References: <uu54la$3su5b$6@dont-email.me> <87edbtz43p.fsf@tudado.org>
<0d2cnVzOmbD6f4z7nZ2dnZfqnPudnZ2d@brightview.co.uk>
<20240408075547.000061e8@gmail.com>
<g52cnWOOwoz_son7nZ2dnZfqnPWdnZ2d@brightview.co.uk>
<uvbe3m$2cun7$1@dont-email.me>
<Mkidnafag8vlooH7nZ2dnZfqn_idnZ2d@brightview.co.uk>
<pan$c8c3e$b0e492b3$c544c27e$d72bff90@invalid.invalid>
<uvk8o6$h2pg$3@dont-email.me>
<dRicnfsW0phufoP7nZ2dnZfqnPednZ2d@brightview.co.uk>
<uvnerd$1ct1p$1@dont-email.me> <87jzkvor7q.fsf@bsb.me.uk>
<uvplme$1rupi$2@dont-email.me> <87le5br16d.fsf@nosuchdomain.example.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 18 Apr 2024 03:33:43 +0200 (CEST)
Injection-Info: dont-email.me; posting-host="ec6fcf3bb75b95711759fde7cd91a1dc";
logging-data="2132187"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+C9CB86pX2qbskVFiY0fMr"
User-Agent: Pan/0.155 (Kherson; fc5a80b8)
Cancel-Lock: sha1:MRswq89Z0CAwnAw6Z95cEkLsnjw=
View all headers

On Wed, 17 Apr 2024 16:59:06 -0700, Keith Thompson wrote:

> Lawrence D'Oliveiro <ldo@nz.invalid> writes:
>>
>> On Wed, 17 Apr 2024 18:04:57 +0100, Ben Bacarisse wrote:
>>>
>>> Perl has had support for object-oriented programming (with multiple
>>> inheritance) for many years -- too many for me to remember.
>>
>> Then why this new “class” thing in 5.38?
>
> It's explained reasonably well at the top of the "perldoc perlclass"
> documentation in Perl 5.38:

It says there is already supposed to be a mechanism for this, it doesn’t
explain why that isn’t good enough.

Subject: Re: on Perl
From: Rainer Weikusat
Newsgroups: comp.unix.shell, comp.unix.programmer, comp.lang.misc, comp.lang.perl.misc
Date: Thu, 18 Apr 2024 17:09 UTC
References: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Path: eternal-september.org!news.eternal-september.org!feeder3.eternal-september.org!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: rweikusat@talktalk.net (Rainer Weikusat)
Newsgroups: comp.unix.shell,comp.unix.programmer,comp.lang.misc,comp.lang.perl.misc
Subject: Re: on Perl
Date: Thu, 18 Apr 2024 18:09:32 +0100
Lines: 33
Message-ID: <87o7a6zjg3.fsf@doppelsaurus.mobileactivedefense.com>
References: <uu54la$3su5b$6@dont-email.me> <87edbtz43p.fsf@tudado.org>
<0d2cnVzOmbD6f4z7nZ2dnZfqnPudnZ2d@brightview.co.uk>
<20240408075547.000061e8@gmail.com>
<g52cnWOOwoz_son7nZ2dnZfqnPWdnZ2d@brightview.co.uk>
<uvbe3m$2cun7$1@dont-email.me>
<Mkidnafag8vlooH7nZ2dnZfqn_idnZ2d@brightview.co.uk>
<pan$c8c3e$b0e492b3$c544c27e$d72bff90@invalid.invalid>
<uvk8o6$h2pg$3@dont-email.me>
<dRicnfsW0phufoP7nZ2dnZfqnPednZ2d@brightview.co.uk>
<uvnerd$1ct1p$1@dont-email.me> <87jzkvor7q.fsf@bsb.me.uk>
<uvplme$1rupi$2@dont-email.me>
<87le5br16d.fsf@nosuchdomain.example.com>
<uvpt9m$2126r$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
X-Trace: individual.net eq/zrm3nOnwiyAtsZE6SeA7CA3RMk4+0Gv9uVmgONHm/5z6XA=
Cancel-Lock: sha1:CPMJdsWV8YO1sbgxHcfiXd3hqyQ= sha1:2NNEVY8vTj4Sk0cwotAttr82BJY= sha256:EGzZ6gqSkBrBXsdaVrpcLLL4xoy6M5UsTPP4tGUYPYk=
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)
View all headers

Lawrence D'Oliveiro <ldo@nz.invalid> writes:
> On Wed, 17 Apr 2024 16:59:06 -0700, Keith Thompson wrote:
>
>> Lawrence D'Oliveiro <ldo@nz.invalid> writes:
>>>
>>> On Wed, 17 Apr 2024 18:04:57 +0100, Ben Bacarisse wrote:
>>>>
>>>> Perl has had support for object-oriented programming (with multiple
>>>> inheritance) for many years -- too many for me to remember.
>>>
>>> Then why this new “class” thing in 5.38?
>>
>> It's explained reasonably well at the top of the "perldoc perlclass"
>> documentation in Perl 5.38:
>
> It says there is already supposed to be a mechanism for this, it doesn’t
> explain why that isn’t good enough.

There's a mechanism for method dispatch in class hierarcies. There's no
builtin support whatsoever for handling class instance data (or class
data, for that matter). This has certain advantages (everything a
reference refers to can be used as object, eg, file handles) and is
reasonably easy to provide for cases without multiple inheritance and
doable otherwise. OTOH, that absolutely not what people familiar with
other programming languages expect and also beyond what many of them can
wisely handle. Hence, a more dictatorial approach is probably expected
to improve things¹.

¹ Somewhat questionable when looking at another newer feature, namely,
subroutine signatures. It would be absolutely great if perl support real
function prototypes including checking function invocations for
correctness at compile time *and* *not* at runtime everytime a
function is called.

1

rocksolid light 0.9.8
clearnet tor