←back to thread

Perl's decline was cultural

(www.beatworm.co.uk)
393 points todsacerdoti | 1 comments | | HN request time: 0.198s | source
Show context
jordanb ◴[] No.46175337[source]
I always found the Perl "community" to be really off-putting with all the monk and wizard nonsense. Then there was the whole one-liner thing that was all about being clever and obscure. Everything about Python came off as being much more serious and normal for a young nerd who wasn't a theater kid.
replies(21): >>46175493 #>>46175513 #>>46175630 #>>46175714 #>>46175715 #>>46175932 #>>46176421 #>>46176502 #>>46176561 #>>46176760 #>>46176895 #>>46177183 #>>46177249 #>>46177277 #>>46178169 #>>46179976 #>>46180300 #>>46180433 #>>46180626 #>>46182489 #>>46197026 #
ErikCorry ◴[] No.46176502[source]
The syntax problems are just surface. There are some real problems underneath:

Poor performance of the single implementation.

A single implementation.

Leaky ref counted GC, but 'luckily' the syntax for references is so clunky that nobody does anything complicated enough that it really matters.

Bolted on object oriented features that never got the love they needed at a time when oo languages were sweeping the world.

Most of the wizards decamping to a new language (Perl6) that was 'developed' for years without an actual implementation to keep them grounded.

replies(1): >>46176876 #
mr_toad ◴[] No.46176876[source]
> 'luckily' the syntax for references is so clunky that nobody does anything complicated enough that it really matters.

That made me laugh. Unlike actually working with Perl references, which made me want to cry.

replies(1): >>46182724 #
1. petit_robert ◴[] No.46182724[source]
Strange, for me it's the opposite.

Just yesterday, I moved some 100 lines of code using a hash quite a few times from the main module to a function using a reference to the hash.

if %args is the hash holding the data, '$args{key}' tells me the value of 'key' in the main module.

a reference to the hash passed to the function is noted like so : '$args = \%args';$args->{key} tells me value of 'key'

All I had to do to adapt the code was to replace '$args{' with '$args->{', done by the time I typed the replace command in my editor.

Funny that it just makes sense to me, must be something with the brain's wiring.