develooper Front page | perl.bootstrap | Postings from July 2000

Re: Threads, reentrancy, and suchlike things (was: Re: Working Group Proposal)

Benjamin Stuhl
July 24, 2000 08:19
Re: Threads, reentrancy, and suchlike things (was: Re: Working Group Proposal)
Message ID:
From: (Simon Cozens)
>Reply-To: Simon Cozens <>
>Subject: Re: Threads, reentrancy, and suchlike things (was: Re: Working 
>Group    Proposal)
>Date: 24 Jul 2000 14:47:10 GMT
>Dan Sugalski (lists.bootstrap):
> >At 07:56 PM 7/19/00 -0700, Russ Allbery wrote:
> >>Benjamin Stuhl <> writes: >>
> >> > 2 more (neither of which the current parser satisfies):
> >> >    * reentrant, as much as possible
> >>
> >>Thinking about threading and re-entrancy from the very beginning of the
> >>design is *vital*, IMO.
> >
> >Anyone got pointers to papers or publications on these subjects handy?
>I encourage you - nay, I encourage *EVERYONE* - to look at glib.
>It's got threading. It's got safe signals. It's got hashes. It's got
>arrays. It's got a main event loop with scheduling. It's got safe memory
>allocation. It's got hook functions. It's got IO disciplines. It's got
>platform independent type support. It's got automatic cache support. It's
>got dynamic module loading.
>How many of these wheels are we prepared to reinvent?
>And, more importantly, why?

One word: GPL

The GPL conflicts with the Artistic License, which is why perl5 isn't full 
of code taken from various GNU projects. The general consensus (or at least 
Larry's opinion, IIRC) was that preserving the multiple license option was 
much more important.

>I *really* hope one of the aims of Perl 6 is to benefit *everyone*, not
>just Perl users.
>I've been working on Unicode stuff in Perl recently, and then it dawns
>on me that if I look at libunicode, all the code I need is there. It's
>already done. I've been duplicating effort. That sucks.
>Perl has been so amazingly insular to date. CPAN teaches us that code
>reuse is good, and that if some piece of available code doesn't meet our
>needs, we refine it and send back the changes to the maintainer. If we
>base a Perl 6 on libunicode and glib and iconv and whatever, I believe
>we can fix their deficiencies and give the results back to their
>development communities so *everyone* can benefit.
>It helps them, because their libraries become more efficient and more
>complete. It helps us, because we can develop a lot faster. It helps Joe
>Random Hacker, because, thanks to us, he's got a better set of tools to
>work with. And it helps Perl PR, because "these Perl guys are so nice,
>they provided a bunch of optimizations to our code".
>Think it over. :)

I've nothing against code reuse from other projects, but license 
compatibility is at least as much of an issue as platform compatibility, 
particularly if perl6 is intended to be easily embedable. If perl6 is only 
available under the GPL, that's going to cut the number of people embedding 
it by a _lot_.

-- BKS
Get Your Private, Free E-mail from MSN Hotmail at Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About