Readit News logoReadit News
perigrin commented on Proxmox Donates €10k to the Perl and Raku Foundation   perl.com/article/proxmox-... · Posted by u/oalders
weare138 · a month ago
Yes. I do. Just in case anyone doesn't know Perl has been in active development and has been adding new features the entire time. It was never 'dead'. This is Perl's new OO interface that was recently added as a stable feature in 5.40:

https://github.com/Perl-Apollo/Corinna

perigrin · a month ago
It's still considered an experimental feature, just as it was in 5.38.x. Also the linked documents aren't 100% reflective of what's been implemented so far, a better URL would probably be https://perldoc.pl/perlclass.
perigrin commented on Proxmox Donates €10k to the Perl and Raku Foundation   perl.com/article/proxmox-... · Posted by u/oalders
kosolam · a month ago
Sounds good, thanks. I suppose ai models are really good at generating perl?
perigrin · a month ago
I've been surprised. I have a coworker who has a deep industry knowledge but none of it was in Perl, he was reaching for ChatGPT a lot early on and while sometimes it wasn't how I would have written it it wasn't wrong. So I did some experiments and I asked Claude to do things like generate apps using the latest Class syntax which is only 3 years old at this point … it didn't have a problem.

Edit: well it occasionally had a problem where it would confuse things for Moose or Raku … but by and large it wasn't wrong it's just the syntax is new. I know Perl developers who have the same issues.

perigrin commented on Matt Trout has died   shadowcat.co.uk/2025/07/0... · Posted by u/todsacerdoti
kzisme · a month ago
What server(s)/channel(s) do you like to idle in? I miss being on irc :(
perigrin · a month ago
I mean at a minimum #moose on irc.perl.org …

Which mst was a huge reason why irc.perl.org is still around.

perigrin commented on Are grownups just giant kids?   newyorker.com/culture/ope... · Posted by u/thm
HeuristicsCG · 9 months ago
No, young kids are sociopaths. they do not yet have well developed faculties of empathy. They will kick you in the head one second and ask for a sandwich the next.
perigrin · 9 months ago
I've been an engineering manager, I'm not sure that argument is as strong as you want it to be.
perigrin commented on NPR quits Twitter after being labeled as 'state-affiliated media'   wbur.org/npr/1169269161/n... · Posted by u/davidbarker
parasense · 2 years ago
The Corporation for Public Broadcasting (CPB) receives about half a billion dollars annually from Federal grants, and then channels that funding into subsidiaries like PBS and NPR.

https://cpb.org/appropriation/history

Funding from a benefactor is known to create bias.

I'm concerned about NPR's statements which almost resembles some kind of pathology, because the statements look like a mix of denial and/or rationalisation. We are seeing outright denial, that they only get a little bit of federal funding... or rationalisation like that funding is just a small portion of our tiny budget...

The fact is that in 2021 Public Radio received about ~$100 Million, and about the same in 2022. If these estimation are wrong, they are leaning towards the conservative side, and would likely go higher. I'm pulling the data from the CPB financial statements, and mostly glossing over the details, yanking data from the executive summary.

https://cpb.org/sites/default/files/aboutcpb/financials/audi...

Please, by all means dispute this data. I'd love to be persuaded that this is all somehow wrong. But right now it looks like NPR & PBS are both affiliated with the Federal government because they get significant funding from there, alongside donations.

perigrin · 2 years ago
I'm not going to dispute the data, but I don't think it means what you're saying it does. Honestly, I think you've made the same mistake that most people make in this conversation and equating NPR to Public Radio. NPR is Public Radio, but not all Public Radio is NPR.

TL;DR: Based on the document you linked to the lions share of the money goes to _public radio stations_ in unrestricted grants to pay for their operations. Of the money that does trickle through that to program providers, NPR is only one of dozens of program producers and distributors, and NPR's own reporting on this seems to accurately portray the reality of how they are funded from independent stations.

Looking at the second link you provided theses are the expenditure programs that look related to public radio broadcasting in the us: Radio Program Fund, National program production and acquisition grants, Community service grants, and Public broadcasting interconnection system. There may be expenses in other categories but they don't appear to be directly related to public radio.

According to that document, these programs are:

Radio Program Fund represents expenses for the development and production of high-quality, new and innovative radio programs that might not otherwise be supported by the marketplace.

National program production and acquisition grants are restricted grants made to qualified public radio stations that must be used for the production, acquisition, promotion or distribution of national radio programs that are of high quality, creative and reflect society’s diversity.

Community service grants are unrestricted general operating grants made to qualified public television and radio stations.

Public broadcasting interconnection system [...] a new interconnection system to be used by both public television and radio stations to transmit and receive programming feeds [... as well as] “other technologies and services that create infrastructure and efficiencies within the public media system.

The line item breakdowns on these services for 2022 are Radio Program fund: 7,145,925 National program production and acquisition grants: 24,579,081 Radio community service grants: 72,446,561 Public broadcasting interconnection: 2,871,313 Total: 107,042,880

So it looks like the CPB spends slightly over 107M on _public radio_ in the united states.

Note that the "National program production and acquisition grants" specifically go to qualified public radio stations. NPR isn't a public radio station, and so doesn't directly get any of that money. That money would go to a local public radio station (here's a [list](https://radiostationusa.fm/formats/public)). A station like my own WMFE then would use that grant money to purchase a radio program like All Things Considered from NPR. But they might also use that money to purchase a radio program like Marketplace from APM, or This American Life from PRX, or be used to produce it's own programs like WBUR's Here and Now. So that money _might_ go back to NPR, but it might not.

The same thing applies to the Radio community service grants, they're unrestricted grants to _stations_ so NPR _might_ get some of that money but much of it probably go to pay local expenses, like the salaries of the radio engineers who keep the towers up and running.

What about the Radio Program fund? That looks like it's pretty much targeted to NPR. Certainly not 100% of it is going to NPR's new programming. Even being generous all de-funding this will do is specifically cut programs "that might not otherwise be supported by the marketplace". I suspect most of that money goes to things like The Splendid Table, and Growing Bolder (neither are NPR shows btw). Unless you want to argue with Rupert Murdoch and Ted Turner that news isn't a marketable product?

The Public broadcasting interconnection is paid to _stations_ to make physically acquiring content easier and a deal with NPR, APM, PRI, PRX and others reduced that cost _significantly_, so that line item dropped to 2M in 2022 from 78M in 2021.

Nothing in your document I believe NPR _claims_ they get about 13% of that portion of a station's budget (based on [WMFE's 2021 Audit](https://drive.google.com/file/d/121U2UFSI8eNYUg59TnZtELEhBL-...) "program acquisition" was about 16% of their total budget so NPR seems credible here) … so about ~$12M of the CPB funding, add in a chunk of the Radio Program fund let's say 80% or ~$6M … we're still at about $18M of the $107M … plus another 1% direct funding (or is that 1% the Radio Program fund?) and we're around 20% of the total CPB "public radio" budget ends up in NPR. Since the CPB's "public radio" budget is only about 25% of the total expenses from the CPB … is 5% of the CPBs expenses considered "significant funding"?

De-funding "public radio" won't mean that Morning Edition goes off the air, it means that the farm report for Ida Grove, IA goes off the air … and the wildfire reports for Billings MT … and close to home for me it means that Brendan Byrne won't be able to keep doing Are We There Yet and reporting on the rockets that keep going up funding my local community with something _other_ than tourism.

The numbers aren't wrong, your definition of "public radio" is wrong when you assume it's just NPR.

perigrin commented on Generative Agents: Interactive Simulacra of Human Behavior   arxiv.org/abs/2304.03442... · Posted by u/mmq
jvm___ · 2 years ago
What happens when some whiz kid hacks the actual water treatment plant or nuclear power plant and just assumes it was a game...

It's like Ender's game IRL

perigrin · 2 years ago
Kinda more like War Games. Ender was more hacked _by_ the Formics in what he assumed was a game … not that it did them any good.
perigrin commented on Conference Presentation Judo   perl.plover.com/yak/prese... · Posted by u/thunderbong
I_dev_outdoors · 3 years ago
Ah, I guess that's probably the Damian he's referring to in his slides then.
perigrin · 3 years ago
Knowing both of them, I pretty much guarantee you it is.
perigrin commented on Goodbye Freenode   nedbatchelder.com/blog/20... · Posted by u/Foxboron
duskwuff · 4 years ago
It's even stupider than that. IRCCloud is a web client which happens to provide some bouncer functionality. Freenode's bouncer is only available over IRC; it requires users to connect with their own IRC client.
perigrin · 4 years ago
Wonder if you can connect with IRCCloud?
perigrin commented on The Future of Perl   perl.topicbox.com/groups/... · Posted by u/bmn__
jerf · 4 years ago
This is a good "patch the holes" plan, but I think it needs to be followed up in short order by some deeper thinking. And some very painfully honest thinking.

Paul Graham, whom some of you may have heard of, once wrote an essay about "What Languages Fix": http://paulgraham.com/fix.html

I think of it a bit differently, which is that languages have a thesis. (Not quite the same but a lot of overlap.) Paul writes that what Perl fixes is "Shell scripts/awk/sed are not enough like programming languages." I would personally rephrase it to something like "There isn't(/wasn't) a language dedicated enough to Getting It Done."

If you put yourself in the context of the time, this was absolutely true. Most languages for getting things done involved a lot of drama and boilerplate. Popular languages of the day would require you to implement your own hash table for a quick script, if you didn't have one on hand. Libraries for that existed of course, but the Internet wasn't really up and running the way it is now yet, and things were hard to find. Perl came in and provided a great Get It Done languages.

However, landscapes evolve over time and so do language theses. C++ is a great example of something that has changed, going from "C should have great support for object orientation" to something more like "C++ should be the choice for programmers who want zero-cost abstractions". Part of the reason for that change is that the former thesis is no longer a compelling one, on the grounds that "great object orientation support" is now simply table stakes for that sort of language. C++ could not drive forward on that thesis in 2021.

That is also Perl's real problem right now. It lacks a thesis. It has very narrow advantages in text munging still, but for almost anything else, I now have an abundance of languages that "get it done" just as well or better. For context, I've got about 15 years of Perl being my primary language under my belt, so that means something; it's not a secondary or tertiary language for me, and I still have plenty of choices to reach for. (Heck, I've even come to prefer Go for JSON munging quite a lot of the time, because with the right tooling it's really easy to parse JSON straight into objects that I can call methods on meaningfully, which is actually more convenient and useful to me than presenting me with a generic hashtable/array representation that I then have to write a lot of code to crawl over from the "outside".) The world has moved on, and Perl's problem isn't necessarily that it lost but that it won. It has successfully convinced the world that Getting It Done doesn't need to come with all the drama and paperwork and complexity of its late 1990s peers. But that means that just like C++ won and it couldn't continue operating on its "good OO" thesis, Perl needs a new thesis.

Moreover, it's going to have to be brutally honest in the selection of that thesis, because a lot of the obvious ones are already covered by Python, and trying to chase Python on its own turf is going to be a losing game. Perl 6/Raku also has its own thesis, which is now also essentially unavailable to Perl 5. Unfortunately, choosing a thesis successfully isn't necessarily about what the Perl team "wants" so much as where there is space in the programming language market, and in the intervening, gosh, decade or so that Perl 5 has been floating along without a thesis, a lot of the easy or obvious answers have been fairly well covered by other languages.

One thesis option is "Old perl code should degrade gracefully", which is the "declare victory and walk off into the sunset" option. To be honest, it's one that should be seriously considered. I think graceful retirement is a test a lot of language committees fail. Here I'd look for improved refactoring tools to help automatically translate old code into better code to modern standards and other such things being the standard, for instance.

But if the Perl 5/7 team wants a different thesis, it's something I think they need to decide consciously. I don't have a suggestion. But I can offer this word of hope; the space of possible theses is really quite large. The point of view where it looks like every possible language exists already is a point of view that is too narrowly stuck in the details of today. With just a bit of change in perspective, there's a lot of untapped fields.

Tempering that hope a bit, Perl's new thesis really needs to be something that Perl's existing code and community brings something powerful to. If you come up with a possible thesis, but look at it honestly and say "That's probably something better done with a brand new language entirely", it's probably not a functional thesis for Perl. And this does cut the space back somewhat. But some persistent thought may still find something interesting.

Personally, I'd also be looking carefully and honestly at what Perl is still doing and consider shedding old use cases/theses. For example, while Python is not experiencing a popularity crisis, consider a hypothetical world in which the only people still using Python were basically NumPy users. It would be a valid choice to move forward with Python development in a way that privileged such use, at the expense of "general purpose" use going forward. I'm not involved enough with Perl to know what that would be, just offering a meta-option to consider.

And let me close on what I opened with... this is a good "patch the holes" plan that should be all means moved forward with, to give space to breathe. I'm positive on the plan, not critical of it.

perigrin · 4 years ago
I actually find Go harder to work with JSON with for exactly those same reasons. With Go if I want to parse JSON into something I can call methods on, the JSON has to conform to something I can build a struct around. If the JSON is complicated in anyway that doesn't line up with Go's sense of structs I'm forced to drop to map[string]interface{} (or something like it). With Perl I can parse into the hashref equivalent of map[string]interface{} and still be able to bless it and call methods on it.

This isn't to say that Perl is better or Go is better, they just have different affordances. Perl is designed for loosely structured data and that causes all kinds of problems when you want to enforce highly structured data. Go is designed to handle strictly structured data and the ramp down is hard when you don't have that.

perigrin commented on The Future of Perl   perl.topicbox.com/groups/... · Posted by u/bmn__
alexhutcheson · 4 years ago
Perl deserves credit for being way ahead of the curve: It was a free, widely available, garbage-collected language with good support for strings, during a time when the server-side alternatives were basically (primitive, early) C++ or expensive commercial toolchains. By 1995 it also had CPAN, which was (I believe) the first comprehensive directory of modules available for a language ecosystem.

The combination of garbage collection, good string support, and a huge set of easy-to-use third-party modules made Perl insanely productive relative to the other options at the time. Remember - Python didn't release a 1.0 until 1994, and Java 1.0 didn't come out until 1996, and the early versions of those languages were missing a lot of features you'd recognize today, and still had plenty of bugs and performance issues to work out. By 1994 Perl had been out for >6 years, and reached version 5.0 that year. In both capabilities and maturity, it was ahead of the other free alternatives, and way ahead of trying to wrestle with string templating in C or C++. Perl enabled a ton of cool things to be built much more quickly than they would have with the other tools available at the time.

At the same time, it's hard to see a viable niche for Perl going forward. The advantages I mentioned above are no longer unique to Perl - they're now table stakes for any mainstream language. Every mainstream language has a package archive now. There are at least 7 mainstream general-purpose languages with a garbage-collecting runtime, with quality ranging from decent to incredible. Every language except C evolved decent support for string manipulation. Perl deserves tremendous credit for leading the way in making these things mainstream, but it has left Perl with very few distinguishing advantages.

Without those advantages, Perl seems destined to gradually fade away. The sheer mass of existing code means it will probably never be gone - there will always be important systems still running on Perl. But very few greenfield projects will use it, and fewer programmers will learn it in the future.

We can quibble about why Perl has gradually faded from relevance. Personally, I think people generally overweight the importance of the Perl 6 announcement, and underweight the impact of Apache's mod_php in shifting usage away from Perl. mod_php enabled hosting providers to safely enable PHP on shared hosting, while mod_perl couldn't be used in that context, because users could affect the Perl environments of other users on the same system. As a result, PHP hosting was cheap and had tons of options, while Perl hosting required a more expensive option like VPS or a dedicated box. This kick-started the PHP ecosystem, and its growth came largely at the expense of the Perl web development ecosystem. One could imagine an alternative world in which PHP never took off, and Facebook, Wikipedia, Wordpress, etc. were all started in Perl, but that's not the world we live in.

perigrin · 4 years ago
CPAN was (at best) the second because it was based on CTAN, the Comprehensive TeX Archive Network: https://en.wikipedia.org/wiki/CTAN

Also mod_php was more akin to FastCGI with the limited access it gave PHP to the Apache request cycle. While mod_perl allowed you to effectively override any stage of the Apache request cycle with custom code. With mod_perl2 this was pushed to the point where I believe the Apache Foundation was running Apache for their SMTP servers running custom Perl protocol handlers.

u/perigrin

KarmaCake day201May 22, 2009
About
[ my public key: https://keybase.io/perigrin; my proof: https://keybase.io/perigrin/sigs/ilFzbIoptleQEu7wvlJ2aUfvLFP9gJj7umT6a6yX7k8 ]
View Original