top | item 40882279

(no title)

borlanco | 1 year ago

There are two types of programming, and each has its own definition of "relevant": new programming, with its preference for ready-made components to reduce complexity, and old-time creative programming, which usually was about the creation of new things.

The "creation" part is key. Perl is a tool for "easy creation", for creators that want to be more productive. This is what Larry Wall wanted.

This is why Perl is good for prototyping. You "create" the prototype, and then you "translate" it to something else.

Perl is quite relevant for me, but I say this as a creator.

discuss

order

wruza|1 year ago

I'm a practical man, for me it's just n_loc difference and more useful imlicitness (and the listed downsides). Not sure if I can understand this "creation" part, even as a former Perl-ist. I think you can turn any language into Perl, it just happens that their core beliefs are incompatible with its ways.

For example, I can easily imagine something like this:

  import 'use-perl'

  while (await ls_lr('./*.txt')) {
    while (await read_lines($filename)) {
      print($ln, $line)
But it's not idiomatic as it uses awful implicit iterators and hideous globals. This conflict is purely dogmatic and doesn't need special syntax, for the most part.

borlanco|1 year ago

The "creative" part is all decisions to be made before coding: architecture, design, modularization, algorithms, APIs, etc.

If I am in charge of those decisions, I can use Perl to build a prototype, to validate the solution I am creating.

But if I don't decide anything, my job is to code whatever. No chance for me to be creative.

Most quirks of Perl are there to make the construction of prototypes easier and faster.