develooper Front page | perl.perl5.porters | Postings from January 2018

Re: An Open Letter to the Perl Community

Thread Previous
From:
Elizabeth Mattijsen
Date:
January 18, 2018 09:20
Subject:
Re: An Open Letter to the Perl Community
Message ID:
D3D41B3D-63BF-41E4-850C-63D38D611A2A@dijkmat.nl
> On 18 Jan 2018, at 04:24, Zefram <zefram@fysh.org> wrote:
> In any case, this is quite irrelevant to p5p.


Well, since I mention p5p in my blog post, I thought it *was* relevant to give you guys a heads up.  And this is going to be my last answer in this thread on p5p unless I’m specifically asked to answer.


> Elizabeth Mattijsen wrote:
>> https://www.perl.com/article/an-open-letter-to-the-perl-community/
> The "Butterfly Perl 5" project is a non-starter until MoarVM and the other
> proposed platforms provide C compilers.  Without a compiler there's no
> way to port our large and complex C program.  There's no way we could
> maintain a parallel implementation in another language, which is what
> the use of NQP without a C-to-NQP compiler would entail.

This is *not* what I had in mind.  A Butterfly Perl 5 Project would attempt to get as close to the API that Perl 5 provides *without* the perl5 runtime internals.  You could consider it a clean room reimplementation.  Very different to what the PONIE project tried to do.


> The "CPAN Butterfly" project sounds worthwhile, but not as straightforward
> as the letter suggests.  A Perl 5 API doesn't automatically work as a
> Perl 6 API, due to differences in data types and calling conventions, and
> even where a fairly direct translation is possible it often wouldn't make
> an idiomatic Perl 6 API.

Indeed.  But it *would* lower the threshold for people who would like to try out Perl 6.  And it would be a prerequisite for a Butterfly Perl 5 Project.

Again, to me this is not mainly about Perl 6.  To me, this is about preserving the Perl 5 *language* into the far future.  If anything, it should help *preserving* Perl 5 code bases, because there would be a clear(er) future path.  If there is one thing management types don’t like, it’s business cul-de-sacs.  I’m attempting to open the cul-de-sac that Perl 5 on the perl5 runtime has become.  This may sound harsh, but it comes from what I’ve seen online, at (non-Perl centric) conventions and booths and from inside many companies and perl 5 porters over the past years.


> Some modules are very tied to the Perl 5 data model and wouldn't make sense on Perl 6 at all.  But a lot of substantive modules could be imitated in a higher-level way, by the application of some intelligence.

Thank you.  As one of the first of Perl 5 features that are missing in Perl 6, I have implemented tie(): http://modules.perl6.org/dist/P5tie:cpan:ELIZABETH , and am working on the support classes such as Tie::Array and Tie::StdArray.  It won’t be fast, but then again, tie() never was.  FWIW, implementation of tie() is completely Perl 6 only code, no nqp involved.


Thank you for listening so far.


Liz
Thread Previous


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