Learning how to #Perl

@cypnk @dexter

I'm getting very @mwl vibes from this 😆

@cypnk The best example of write only language I've encountered 

@ekari @cypnk
having used most of them (I missed Snowball/Icon some how?), I'd have to agree. Tho' i have some lingering affection for APL/J and FORTH, I'm not /doing/ anything with _them_.

Readable literate Perl is at least possible (and is required in the surviving large Perl shops).

@BRicker @cypnk I must clarify that I haven't written a line of Perl in 20+ years. But I do remember, that it always felt easier to start from scratch than to decipher something already written. TIMTOWTDI wasn't great.

With Python everything became simpler.

@ekari @cypnk

Yes, those of us still in #Perl world are those who valued TIMTOWTDI.

20 years ago, there was indeed a lot of Perl that wasn't very extensible.
Things have changed (in part because the people writing bad Perl left).

@BRicker @ekari @cypnk Those who valued TIMTOWTDI but understood BSCINABTE settles the stomach.

(But Sometimes Consistency Is Not A Bad Thing Either, for those who don’t know the acronym)

@perigrin @ekari @cypnk
Yeah, in-house consistency is very useful!
Principle of Least Surprise applies to code as well as to UI.

Damian was explicit in _Perl Best Practices_ that internal consistency in a codebase was the prinary goal, that his recommendations were just a starter set (chosen to minimize oopsies) that should be adjusted to local taste. (Uri & I got a couple footnotes and sidebars added in AlphaReading where tastes varied.)

@BRicker @cypnk Ouch, I took a hit! 😅

Hmm. Maybe I should take a peek at a modern Perl project. Any suggestions?

@ekari @cypnk
For a fun one, Ovid's SciFi MMO-RPG "Tau Station" is a lovely project https://www.youtube.com/watch?v=AWy9bC8lBns .
(He's also the architect of our next, and finally core, OO framework.)
Curtis "Ovid" Poe - "Modeling a Universe in Perl"

YouTube

@ekari @BRicker @cypnk I’ll toot my own horn at this point. My current sysadmin utility, built on a whole set of my other crimes. Classes all the way down.

https://code.quatermass.co.uk/toolsmith/perl-App-IPSetMgr

perl-App-IPSetMgr

General IP Set Manager

Code From The Pit
@QuatermassTools
Sounds useful, but either you're down for maintenance or using a blocklist that keeps rotating ISP IPs listed too long?

@BRicker yup, it’s got a list of 800000 subnets from AI crawlers gathered during a fairly heavy attack back in February, one of the reasons for writing the tool in the first place.

I should be able to clear down the list, probably tomorrow and rebuild now the tool can be used in anger.

@cypnk I legit love how Perl celebrates the creativity of finding cursed new ways to do things.
@growlph What is a curse, but a blessing in disguise /ducks

@cypnk
Are we talking 3 curses in a trench coat, or more of a fake moustache type situation?

@growlph