93% of paint splatters are valid Perl programs (2019)
Perl, Paint Splatters, and the Joke Premise
- Thread centers on a SIGBOVIK/April 1–style joke: OCR-ing random paint splatters, most of which parse as syntactically valid Perl.
- Many see it as a clever twist on old “Perl looks like line noise” jokes.
- Some note the generated programs are syntactically valid but semantically trivial, usually no more meaningful than
0-0.
Language Theory and Esoteric Connections
- Perl is noted as not context-free, so syntactic validity isn’t checkable by a simple stack machine.
- Discussion of concatenative languages where every token sequence can be valid; some correct this to “some concatenative languages.”
- Links to binary combinator languages (Jot, zot, Binary Lambda Calculus) and Gödel numbering as ways to map arbitrary bitstrings to programs.
- Clarifications: Gödel numbering must be injective; multiple programs can encode the same algorithm.
Perl in 2024: Usefulness and Niche
- Strong theme: Perl is no longer “mainstream,” but still heavily used in sysadmin glue, automation, text processing, and legacy backends.
- Examples: Debian tooling, banking, telecoms, email providers, internal enterprise systems, cron jobs, ad‑hoc data munging, code generation.
- CPAN and strong backward compatibility are repeatedly praised; old scripts often “just keep working” decades later.
- Several argue Perl remains fast, portable, and productive for those who know it, even if you’d be mocked for proposing it for greenfield projects.
- Consensus: Perl will persist quietly for many years, especially in existing stacks and smaller firms, but won’t regain broad popularity.
Ergonomics, Readability, and Safety
- Some insist Perl can be readable if you avoid one‑liners and enable
strict/warnings; others dislike its permissive and implicit behaviors. - Barewords and implicit type coercions are highlighted via a quine based on “Illegal division by zero…”, prompting comparisons to JavaScript’s quirks.
- Dynamic vs static typing and IDE support vs simple editors are debated, with differing views on what most affects productivity.
- A few contrast Perl’s “anything parses” tendency with safer languages (e.g., Elm) where many classes of runtime errors are unrepresentable.
OCR Behavior and Noise vs Meaning
- Several note that the experiment’s outcome is heavily shaped by OCR aggressively forcing any blotch into text.
- Some criticize OCR in general for still emitting garbage text from non-text images; others mention LLMs as more context-aware OCR agents.