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

Re: On actually implementing core features [was: Re: Dual-life perl5-or-7 code and prototypes - impossible?]

Thread Previous | Thread Next
Chris Prather
July 2, 2020 19:33
Re: On actually implementing core features [was: Re: Dual-life perl5-or-7 code and prototypes - impossible?]
Message ID:
On Thu, Jul 2, 2020 at 2:38 PM Paul "LeoNerd" Evans <>

> On Thu, 2 Jul 2020 13:03:37 -0400
> Chris Prather <> wrote:
> > If the Perl community has taught me anything it's consensus building
> > takes *way* longer than 3-5 years. Moose is now 14 years old and
> > based on the conversations around Cor there is still not a full
> > consensus about the need for a core object system beyond bless(), and
> > we're just barely (say the last 3-5 years) into a majority consensus
> > that Moose is probably a reasonably good idea as long as you remove
> > about 50% of it, without a real agreement on which 50% should be
> > removed.
> I'm not sure that's really true these days. I think most of the core
> folks are relatively clear on the fact that several things are missing:
>  * try/catch
>  * proper exceptions to go along with theabove
>  * an object and class system
>  * a better thing than given/when/smartmatch
> Up until now there has been much talk and very little real activity.
> People sometimes come along and suggest an idea or so, but very few
> concrete implementations of real code ever turn up. I know because
> until quite recently I have been very guilty of this - I'll suggest
> "Hey, it would be great if ..." and nobody objects, but then nothing
> ever happens. You can't just suggest a feature and expect that "someone
> else" will implement it.

Kinda exactly my point. We have been working on try/catch for  at least 11
years, and your specific implementation is 4 years old, with at least one
more year of development to get it into core. By any reasonable measure
we're either right against the 5 year window, or well past double it,
before agreeing that a specific proposal should be in core. Can we
reasonably say that in 5 years we'll have a consensus on how to replace it
should it turn out to be a bad idea?

And that's a well defined problem that was fairly well understood (at least
by the core developers) before Try::Tiny dropped into the scene. To
paraphrase Dan Book from the other day:

"[Features] are like Unicode. Everything thinks it means some obvious
thing, but it's difficult to get to the point where they'll explain which
of 20 things they mean if they even know"

Without a concrete proposal then consensus is effectively meaningless. And
you're exactly right that we've had a lack of concrete examples. Like you,
I myself am as much to blame as anyone. Unlike you I haven't usefully
contributed to the core yet, so take my opinion with a grain of salt.


Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About