develooper Front page | perl.perl5.porters | Postings from June 2020

Re: Announcing Perl 7

Thread Previous | Thread Next
From:
Eric Wong
Date:
June 26, 2020 21:56
Subject:
Re: Announcing Perl 7
Message ID:
20200626215649.GA27580@dcvr
"Konovalov, Vadim" <Vadim.Konovalov@dell.com> wrote:
> -----Original Message-----
> From: Dave Mitchell <davem@iabyn.com> 
> 
> > In my world, the big first public release of 7.0.0 will come along with lots of
> > explanations and docs all saying that "if you are writing modern perl, then the
> > first thing you need to do is add 'use v7;' to the top of
> > your script" - in the
> > same way that 'use strict; use warnings' has been
> > the mantra for the last 20
> > years.
> 
> I think this angle of view of word "modern" isn't wise.
> 
> IMO "modern" means supporting modern programming techniques:
>  - webasm (there was a thread about webperl ,but I don't see it in recent perl)
>  - multithreading (deprecated several years ago?)
>  - llvm build (I want llvm@win32)
>  - etc
> 
> The point "modern" === "use strict; use warnigns;" -- I don't buy it. 
> Yet warnings.pm is too bloated, to my taste (so I don't use it, but this 
> is another story)
> 
> I admit - the "use strict" feature is very good selling point of Perl.
> But if the language does not support anything except "use strict" - then 
> it is hardly useful.

I love "use strict" for projects I share publicly, too.  But for
personal stuff which uses "do /path/to/common.pl"?  Nope :>

> > People learning perl for the first time will know nothing other than to
> > add 'use v7'. People working for big companies with coding standards
> > will be
> > told to put 'use v7' at the top of each script.
> 
> This seems unwise to me.
> 
> Are there any modern languages that require some version on the top 
> of the program?
> Not in C++, Rust, Javascript - AFAIK

Most modern languages are compiled and shipped as binaries, so
breakages only affect active developers and packagers; not
ordinary users.

Scripting languages like Perl, Python, Ruby, Tcl have
significantly less room to evolve than compiled languages once
they've reached critical mass.

JavaScript is an exception.  For most users it's shipped with a
complex browser which requires constant updates, anyways.  I
can't say I know much about NodeJS, but I do hear about debacles
(e.g. "leftpad") and stay clear of it.

I've known many Ruby users and organizations abandon it due to
to the unending stream of incompatibilities.  I don't see Ruby
growing, either.

Perl is already a significant part of many Linux and BSD
systems.  It occupies unique space in the *nix world; so I think
treating it as a mature data format with version numbers is
appropriate.

I think Perl can and should appeal to newbies who want a mature,
well-tested toolchain with history and experience behind it.
That's how I sold Perl to one of my clients last year.

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About