• 1 Post
  • 81 Comments
Joined 1 year ago
cake
Cake day: June 12th, 2023

help-circle
  • Yeah I’m not paying for something and it still be illegal. I’d rather stick to piracy. I get your point and if it works for you that’s cool. But it’s not for me.

    A good usenet setup with the Arr stack can automatically download basically anything you want and costs tens of dollars per year to run with very little, if any risk. (have there been any prosecutions for people downloading from usenet?)

    With a little bit of work and an old computer for a server you can basically run your own automated piracy streaming service.


















  • The way it works is that there’s a symbol table entry for “foo” which has a slot for a hash, scalar, array, glob, etc.

    That leads to some super weird behaviour like, for example, if I declare a scalar, hash and array as “x”:

    $x = "sy";
    %x = (foo => "mb");
    @x = ("ol", "s!");
    

    You can access them all independently as you’re aware:

    say "x: ", $x, $x{foo}, @x; # Outputs:  x: symbols!
    

    But what’s really going to bake your noodle is I can assign the “x” symbol to something else like this:

    *z = *x;
    

    …and then the same thing works with z:

    say "z: ", $z, $z{foo}, @z; # Outputs:  z: symbols!
    

    Oneliner if you want to try it:

    perl -E '$x = "sy"; %x = (foo => "mb"); @x = ("ol", "s!"); say "x: ", $x, $x{foo}, @x; *z = *x; say "z: ", $z, $z{foo}, @z;'
    

    Congratulations! You now know more about one of Perl’s really weird internals than I’d wager most Perl programmers (I have literally never used any of the above for anything actually productive!)


  • dan@lemm.eetoTechnology@lemmy.worldPerl still relevant in 2023/24?
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    1 year ago

    You mean the fact that you can have a hash called %foo, an array called @foo and a scalar called $foo all at the same time? I agree that’s a weird choice and there’s potential for insanity there, but it’s pretty easy to just not do that…

    20+ years of Perl experience and while Perl has a load of idiosyncrasies that make it harder to work with than other languages, I don’t think that particular one has ever caused a significant problem.