Perl in 100 Seconds

Поділитися
Вставка

КОМЕНТАРІ • 923

  • @Fuduwahluz
    @Fuduwahluz 2 роки тому +3291

    "It's about writing scripts that no one can read or understand, so they can't fire you" - excerpt from a interview with a pearl developer, Walter Wallis

  • @DesTr069
    @DesTr069 2 роки тому +3848

    Having “my” and “our” as what determines if a variable is local or global is really funny to me 😅

    • @DreamskyDance
      @DreamskyDance 2 роки тому +698

      I guess every time you define a global var in perl soviet anthem starts playing...

    • @klittlet
      @klittlet 2 роки тому +456

      Capitalist vs communist variable

    • @falconlewitteducation4941
      @falconlewitteducation4941 2 роки тому +97

      @@klittlet Yes Comrade

    • @khaled-0
      @khaled-0 2 роки тому +80

      Our variable ←_←

    • @adrianojose7172
      @adrianojose7172 2 роки тому +46

      funny to US! *soviet anthem intensifies*

  • @4.0.4
    @4.0.4 2 роки тому +2450

    C: write once, compile everywhere.
    Java: write once, run everywhere.
    Perl: write once, read never.

    • @AByteOfPi
      @AByteOfPi 2 роки тому +88

      just wait until you hear about APL

    • @blackzakuya
      @blackzakuya 2 роки тому +17

      Confused every other time.

    • @truthmatters7573
      @truthmatters7573 2 роки тому +123

      Python: write once, then rewrite it in Rust for blazing fast memory safe performance.
      I do love python, though.

    • @roronoazoro7619
      @roronoazoro7619 2 роки тому +131

      Correction: Java is write once debug everywhere

    • @Flankymanga
      @Flankymanga 2 роки тому +4

      oh how true this statement is...

  • @Kyagara
    @Kyagara 2 роки тому +633

    "What happened in the 80s stays in the 80s, except perl" - Perl poet

    • @hanswoast7
      @hanswoast7 2 роки тому +4

      Even the terminator could not help it :D

    • @randomrfkov
      @randomrfkov 2 роки тому +2

      Perl devs still use telnet BBS for social media

    • @YourNickIsTaken
      @YourNickIsTaken 2 роки тому

      And mRNS vaccines.

    • @Redcactus5
      @Redcactus5 2 роки тому

      Like that one SpongeBob meme

    • @vladverified7659
      @vladverified7659 2 роки тому +2

      I’ve lived to see a programming-medieval literature crossover joke. I can now die in peace

  • @williamchamberlain2263
    @williamchamberlain2263 2 роки тому +246

    Yes, I definitely want a language that has necromancy as a core feature

    • @smithjustinn
      @smithjustinn 5 місяців тому +5

      Bless being a keyword makes me think Perl is more a Priest build

  • @camstuart
    @camstuart 2 роки тому +164

    These x in 100 seconds series are really cool. One thing with Perl (have spent most of my career writing perl, but no longer) When accessing an element in an array or a hash, we use "scalar context" eg: my @items = (1,2,3); print "first item is: $items[0]
    "; Raku on the other hand uses the same sigil in all situations, so print "first item is: @items[0]
    "; would be correct

    • @TheLostBijou
      @TheLostBijou 2 роки тому

      I would have to favor Raku there. you can also represent scalar numbers readably, such as 1_000_000. It has many, many special features, but like everything that is powerful, it can be misused.

    • @JohnHughesChampigny
      @JohnHughesChampigny 2 роки тому +4

      @@TheLostBijou "you can also represent scalar numbers readably, such as 1_000_000" As you can in Perl.

    • @piotao
      @piotao 2 роки тому +2

      exactly, and this scalars with $ are 'perl way' as it always was! Is raku worth to learn at all, when we have Perl?

    • @TheLostBijou
      @TheLostBijou 2 роки тому +2

      Pio, from what little I know, yes. Especially if you are doing anything with language grammars. I haven't checked in on the language in a while, though.

    • @callyalater
      @callyalater 2 роки тому +2

      I was about to make the same comment. I do prefer the Raku way of doing things personally and actually really like Raku as a language

  • @subrotoxing8214
    @subrotoxing8214 2 роки тому +385

    So grateful for these 100secs series... just what i needed 20 years ago :(

    • @StfuSiriusly
      @StfuSiriusly 2 роки тому +9

      why? these videos are great but just show a very short over view. how would that have helped you 20 years ago?

    • @jaysonmichael2468
      @jaysonmichael2468 2 роки тому

      @@StfuSiriusly maybe because he need an introduction to programming language to understand the language more easily.

    • @Aragorn450
      @Aragorn450 2 роки тому +17

      @@StfuSiriusly Because we were programming in Perl, PHP, C++, JavaScript, etc, 20 years ago. So it'd have been nice to get these quick overviews of languages and their plus/minus back then instead of now after we've learned it all ourselves.

    • @subrotoxing8214
      @subrotoxing8214 2 роки тому +3

      @@StfuSiriusly someone told me perl was his favorite ... and i did not bother asking why ... because i knew i would be more confused hearing his explanation. a picture is a thousands word. had this video been available back then might convince me to bite the bullet and learnt perl ^^

  • @mobeen360
    @mobeen360 2 роки тому +145

    I accidently discoverd it when i was in my vscode making a new python file but instead of typing .py extension I typed .pl which displayed a little camel icon and then I googled "programming language with camel icon". That's how I found it lol😂

  • @leoaso6984
    @leoaso6984 2 роки тому +793

    The Perl language was so terse and minimal that the programming community rebelled by adopting Java.

    • @aziskgarion378
      @aziskgarion378 2 роки тому +59

      Yeah sure it was the programming community? And not the business managers who thought Java was the next hot thing and hired developers to write in that verbose monstrosity?

    • @masterflitzer
      @masterflitzer 2 роки тому +49

      @@aziskgarion378 Perl is still just a scripting language, writing big scale apps with it would be worse than with Java

    • @ellisgl
      @ellisgl 2 роки тому +11

      When PHP 4 came out, I learned that and forgot Perl.

    • @StefanReich
      @StefanReich 2 роки тому +14

      Yeah, Java's syntax is not the best that ever was. It's the JVM that makes the difference and it's the reason that Java is so successful. The JVM is just a fantastic engine that delivers on its promises.

    • @JustBCWi
      @JustBCWi 2 роки тому +9

      A comment that clearly does not understand the difference between a scripting language and a systems language. Java adoption was a rebellion against C++. Python & Ruby adoption was a rebellion against Perl. ;)
      The Perl core had not gone after Perl 6, and instead addressed some complaints by the community, then perhaps Perl would still be in the top 10. :shrug:

  • @djcaesar9114
    @djcaesar9114 2 роки тому +135

    One of the most underrated languages. It saved me several times for big projects when it involved dealing with huge amount of data.

    • @_modiX
      @_modiX 2 роки тому +4

      could you elaborate? Why was perl the best choice? Weren't there better alternatives?

    • @djcaesar9114
      @djcaesar9114 2 роки тому +26

      @@_modiX I had to develop a new major application with modern technologies to replace 2 old COBOL apps. I had to convert data handled by these two apps (a huge amount of more or less structured data) so that they would fit in my new PostgreSQL database.
      I wrote several scripts in several languages to treat every line of old data, applying a lot of tests and transformations, to get lines that could be injected in a correct PG database with good indexes, primary and foreign keys, etc.
      PERL was by far the fastest and most reliable.

    • @_modiX
      @_modiX 2 роки тому +10

      @@djcaesar9114 That's a great observation. I will keep that in mind for my future works. Thank you for your response.

    • @djcaesar9114
      @djcaesar9114 2 роки тому +2

      @@_modiX you're welcome, if my experience could help fellow developers, it's great! :)

    • @Demosai
      @Demosai 2 роки тому +1

      Same same!

  • @pm71241
    @pm71241 2 роки тому +66

    Hmm... former long time Perl programmer here ...
    I somehow doubt that Perl's main usage nowadays is CGI scripts. ... that time has passed.
    It is used a lot for sysadm scripts and what it's backcronym says: "Practical Extraction and Reporting Language".
    It's very useful for quickly processing some input to some output when bash/sed/awk are too cumbersome. - which was kind of it's original purpose.

    • @bluesquare23
      @bluesquare23 2 роки тому +4

      Still lots of perl cgi based websites hosted at Pair Networks!

    • @robbrown2789
      @robbrown2789 2 роки тому +4

      Maybe moved to FastCGI or other protocols in more persistent environments, but still plenty of (new) websites/platforms being built in it. Things To Get Me is one of mine.

    • @CARPB147
      @CARPB147 Рік тому

      @@bluesquare23 Websites written in Perl don't have to be CGI. Preferable to use a framework like Catalyst (MVC pattern) with the Template Toolkit, or Mojolicious, or Dancer2.

  • @andresgz
    @andresgz 2 роки тому +166

    Please "use strict;" and "use warnings;" to make your code less error-prone

    • @RagHelen
      @RagHelen 2 роки тому

      Shut up, buzzkill.

    • @bit2shift
      @bit2shift 2 роки тому +7

      Don't forget `use English qw{-no_match_vars};` 😉

    • @andresgz
      @andresgz 2 роки тому +10

      @@bit2shift Just adding that the '-no_match_vars' avoided regex performance penalty in perl 5.18 and earlier.
      This was fixed in perl 5.20 so you can just "use English;" since then.

    • @scoreunder
      @scoreunder 2 роки тому +3

      tacking onto that, if you declare a variable, go with `my` by default rather than assigning it out of nowhere

    • @kindlin
      @kindlin Рік тому

      @@andresgz
      Wait, that's real code?
      I need to be running from this syntactic nightmare.

  • @NNNedlog
    @NNNedlog 2 роки тому +56

    The "my" and "our" keywords is really amazing. Makes it easier to understand even if it's the first time hearing of this language

    • @Fooney1
      @Fooney1 Рік тому

      I like VOID. Oh wait its dumb as hell

  • @kuma9239
    @kuma9239 2 роки тому +7

    The "my", "our" and "unless" are good ideas. You don't need to know them, but the moment you put your eyes on them you know what they mean.

  • @collinthomas6288
    @collinthomas6288 2 роки тому +19

    It's been ten years since I've used Perl, but this video made me miss it. Great language

    • @k1lldash9
      @k1lldash9 Рік тому

      Same!
      I like honestly how things can get convoluted, but simple once you know it
      my $cin = ;
      vs
      my $cin = ;
      less to type and achieves the same thing

  • @esc120
    @esc120 2 роки тому +101

    1:33 array element should be accessed by $nums[1] and hash element should be accessed by $friends{'Larry'}.
    @nums[1] is an array slice with one element and @friends{'Larry'} is a hash slice with one element and %friends{'Larry'} is a hash slice with one key-value pair.

    • @dexterbt1
      @dexterbt1 2 роки тому +9

      Jumped here to comment on this also. A 'use strict' pragma might flag this compile time.

    • @DominicArkwright
      @DominicArkwright 2 роки тому +2

      Also came here to say this ;)

    • @pjmmccann
      @pjmmccann 2 роки тому +3

      Yep: it's a head-scratcher for every perl noob

    • @MattOatesUK
      @MattOatesUK 2 роки тому +1

      This needs pinning

    • @eritain
      @eritain 2 роки тому +2

      The sigil was wrongly omitted from the first `print` example too.

  • @krtirtho
    @krtirtho 2 роки тому +511

    Imagine perl developers fighting over if a variable should be "my" or "our"
    Declaring global variables with the keyword *"our"* is the most Russian thing I've ever seen

    • @papajohnsuk5965
      @papajohnsuk5965 2 роки тому +17

      knew i would find this comment

    • @victorpinasarnault9135
      @victorpinasarnault9135 2 роки тому +5

      Our variable kkkkkkkkkkk

    • @ummuser
      @ummuser 2 роки тому +10

      I'm a perl developer, nobody uses our. Having variables in a global scope gets messy.

    • @juanmacias5922
      @juanmacias5922 2 роки тому +4

      Soviet*

    • @youkofoxy
      @youkofoxy 2 роки тому +13

      actually is USSR.
      current Russia is pretty much a "my" country.

  • @apexphp
    @apexphp 2 роки тому +82

    Perl, my first love in the programming language. After 17 years, I even find myself using it daily these days. Converting and refactoring a bunch of Perl and Python scripts over to Rust atm. Good stuff.

    • @theroboman727
      @theroboman727 2 роки тому +10

      hearing rust always makes me happy lol. I love rust and this is my first time learning anything about perl and seems very interesting, but also way too complex for practical apps

    • @apexphp
      @apexphp 2 роки тому +9

      @@theroboman727 ehh, Perl is all but dead, which is how I got this contract. A biologist showed up in my inbox one day excitedly saying, "hey, I see Perl on your resume! I can't find anyone who knows this language, and I'm doing some cool DNA analysis work, can you help?". I obliged, then proceeded to convince him if processing time is of utmost importance, we really need to be on Rust, so off to the races with Rust we go. And yeah, love Rust as well.

    • @user-rd3jw7pv7i
      @user-rd3jw7pv7i 2 роки тому +10

      @@theroboman727 Rust's guidebook is basically the main reason why I fell in love with it. It feels like a friend guiding you to use a tool they create rather than a textbook telling you syntaxes and what not.

    • @Javier-ov3hj
      @Javier-ov3hj 2 роки тому

      @Apex and PHP Do you have any recommendations for learning perl or more specifically for converting perl to python?

    • @JustBCWi
      @JustBCWi 2 роки тому

      I gave up Perl for Ruby when Perl 6 was trying to come along. I build a major system in Perl, over 250K SLOC.

  • @bayrockdev
    @bayrockdev 2 роки тому +28

    I've been looking forward to this one! Can we see Lisp and/or Clojure next maybe?

  • @JohnHughesChampigny
    @JohnHughesChampigny 2 роки тому +5

    First major error at 1:26. Access of an array element is $nums[1] (dollar because the RESULT is a scalar). Similarly to access a field of a hash its $friends{Larry} not %friends{Larry}

    • @divinecomedian2
      @divinecomedian2 2 роки тому

      shows how confusing the language is

    • @JohnHughesChampigny
      @JohnHughesChampigny 2 роки тому +1

      @@divinecomedian2 What is this: "$a" -- answer it's a scalar, because it starts with a "$". What is this: "$b[20]" -- answer: it's a scalar, because it starts with an @. It's also one element of an array. What is this: "@b[20]" -- answer: it's an array, because it starts with an @. It happens to be a slice of the array @b that only contains the 20th element of @b.
      Perl6's "@b[20] is a scalar that is the 20th element of @b" is the confusing thing.

    • @CARPB147
      @CARPB147 Рік тому

      @@divinecomedian2 "Confusing" as opposed to what?? How about this gem 👇
      Apparently Python can't add:
      python -c "print('=',0.6+0.7)"
      = 1.2999999999999998 ❌(ouch!)
      ... whereas:
      perl -e "say('=',0.6+0.7)"
      =1.3 ✅

  • @pirate21
    @pirate21 2 роки тому +38

    Long time perl user - no other language comes close to the regex power of perl.

    • @xoell388
      @xoell388 Рік тому

      Raku?

    • @pirate21
      @pirate21 Рік тому +5

      @@xoell388 Ha, I can’t move off regular Perl after 25+ years. Something about “teaching an old dog” ….

    • @xoell388
      @xoell388 Рік тому +2

      @@pirate21 I am keen to learn perl whatever people say

    • @pirate21
      @pirate21 Рік тому +2

      @@xoell388 sure, go for it. The best place to start is with the O’Reilly “ programming Perl” book.

    • @CARPB147
      @CARPB147 Рік тому

      @@xoell388 Good for you. Ultra useful.

  • @derjansan9564
    @derjansan9564 2 роки тому +6

    "Swiss army chainsaw" alone made it worth watching.

  • @bouncypeople8749
    @bouncypeople8749 Рік тому +28

    I don’t know why, but this language connects with me on a deeper level. I love the fact that Perl isn’t like every other programming language. It’s uniqueness is what makes it so beautiful. Graciously powerful.

    • @games4us132
      @games4us132 Рік тому +2

      If you're unique doesn't mean that you're useful

    • @hansdegroot652
      @hansdegroot652 Рік тому +1

      Just love how there are often many ways to do the same

    • @JamesSmith-ix5jd
      @JamesSmith-ix5jd Рік тому +1

      I started my programming journey with Linux - Bash, awk, grep, regex, little bit of C, so Perl just clicks for me, but I guess it depends on your background.

    • @bouncypeople8749
      @bouncypeople8749 Рік тому

      @@games4us132I guess you are not a sysadmin 😂

    • @bouncypeople8749
      @bouncypeople8749 Рік тому

      @@hansdegroot652So many ways to accomplish the same goal.

  • @spatialnasir
    @spatialnasir 2 роки тому +45

    Perl: I'm the swiss army chainsaw of the internet.
    Python: There should be one- and preferably only one -obvious way to do it.

    • @dexterbt1
      @dexterbt1 2 роки тому +14

      In Perl, its TIMTOWDI actually, "there is more than one way to do it". Quite the opposite of the guidelines in the zen of python

    • @factChecker01
      @factChecker01 2 роки тому +8

      And Python's "one way" will change in the next release, but it will be even more perfect and final than the prior way. (sarcasm)

    • @CARPB147
      @CARPB147 Рік тому +1

      Apparently Python can't add:
      python -c "print('=',0.6+0.7)"
      = 1.2999999999999998 ❌(ouch!)
      ... whereas:
      perl -e "say('=',0.6+0.7)"
      =1.3 ✅

  • @ambots13
    @ambots13 2 роки тому +3

    this channel is the best-place to window shop tech stuff

  • @pm71241
    @pm71241 2 роки тому +21

    1:33 ... sigil errors. Unlike other languages with sigils, in Perl they do not follow the type of the variable, but the type of the expression.
    So it's no @nums[1] or %friends{'Larry'} ... it's $num[1] and $friends{'Larry'}

    • @CARPB147
      @CARPB147 Рік тому

      That is because $friends{'Larry'} is a *scalar* variable, and not an aggregate set like an array or hash (dictionary). Same with $num[1].

  • @andrewmanninen1244
    @andrewmanninen1244 2 роки тому +44

    It hurts to see the absence of "use strict;" at the top of the file.

    • @kalleguld
      @kalleguld 2 роки тому +2

      What is this, a crossover episode?

    • @HammerTime281
      @HammerTime281 2 роки тому +12

      And maybe a "use warnings" if you're feeling frisky

    • @DominicArkwright
      @DominicArkwright 2 роки тому +5

      If he did that, none of the other errors would work… ;)

  • @bluesquare23
    @bluesquare23 2 роки тому +8

    The great thing about perl is that it's easy to write, fast, and remarkably useful. Larry Wall and his descendants did a great job!

    • @Chakradhar-e1w
      @Chakradhar-e1w Рік тому

      I hope they some how get raku to mainstream

  • @gerardgauthier4876
    @gerardgauthier4876 2 роки тому +11

    Perl in 100 secs... Where's the references? Where's the modules and packages? Love Perl, the most underrated and misunderstood language.

  • @JuuzouRCS
    @JuuzouRCS 2 роки тому +8

    Now, this looks so much better, comprehensive and far more entertaining than my 4-man 15 mins presentation on "Perl" back in my first year of college...
    Cool stuff!

  • @amitk.512
    @amitk.512 2 роки тому +56

    Variable scoping with 'my' and 'our' keyword was pretty cool.

  • @kevinbatdorf
    @kevinbatdorf 2 роки тому +19

    “Things that are different should look different”

    • @eritain
      @eritain 2 роки тому +1

      There is a conceptual elegance to, say, Lisp, where no matter how different things are, they all look the same. But I tend to agree with Larry that in practice, that turned into "oatmeal with fingernail clippings."

  • @chloedelaware2922
    @chloedelaware2922 2 роки тому +7

    kinda wild this fireship guy managed to convince everyone 2 and a half minutes is 100 seconds

  • @MaxCarponera
    @MaxCarponera 2 роки тому +3

    I implemented a whole P2P network for a customer in perl. Don't regret any second.

  • @nickxidis9571
    @nickxidis9571 2 роки тому +9

    Probably learned more about programming from Perl than any other language. That means that Perl is cool and I’m really old. ;)

  • @markslima1557
    @markslima1557 2 роки тому +4

    wow this kind of blew me away. now i must learn perl.

    • @CARPB147
      @CARPB147 Рік тому +1

      Learning curve is *not* steep. It is shallow enough to get you writing simple scripts in a few minutes, but the learning curve can be somewhat long depending on how deep you have to go into the bushes to explore and use the many features and power it offers. And to use it *properly* so it avoids the points that people criticize it for.

  • @SebastianWeinberg
    @SebastianWeinberg Рік тому +1

    I have forgotten everything I ever learned about Perl, years ago, _except_ that it was the biggest collection of hacks and dirty tricks I'd ever seen, and I loved it!

  • @benhuyck9797
    @benhuyck9797 2 роки тому +4

    Perl is likely the most powerful tool in my toolbox.

  • @toomasvendelin
    @toomasvendelin Рік тому +1

    At 1:35, it should be $nums[1], not @nums[1]. @nums is an array, $nums[1] is a scalar.

  • @Shdnfncidjen
    @Shdnfncidjen 2 роки тому +4

    Perl programmer here. Interpreted is a bit of a misnomer... Perl is commonly known as an interpreted language, but this is not strictly true. Since the interpreter actually does convert the program into byte code before executing it, it is sometimes called an interpreter/compiler, if anything at all.

  • @hansdegroot652
    @hansdegroot652 Рік тому +1

    Even after all these years still love unless

  • @themesong5477
    @themesong5477 2 роки тому +13

    We can all agree that Fireship is the best programing youtuber. And he changed many lives by explaining lots of stuff. And a discord server where all thes people who value Fireship's clean explanations to join amd help each other!

  • @StevenWDix
    @StevenWDix 6 місяців тому

    I like the fact I can write code in Perl without worrying about white spaces and having to use an auto fill gui code editor that shares all my stuff with big data if I am not careful. Most of the core features you will ever need on a web server are built in, you have to import hardly anything.
    The Active State community is where people were nudged if you did not take the time to get a grip on all the concepts.
    This was written as a possible replacement for C, and it was so well done it largely has not changed in quite a long time.
    Hats off to Larry. Learn this and you will stop chasing frameworks such as JQuery (horrors?).
    CSS another language people complain about, there are no short cuts to writing code and testing it.
    You got to pick up an instrument and play it to confirm you learned anything.
    A lot people never will, then later lament why the properietary multi megabyte or gigabyte database layer sitting on top of everything is so expensive?
    Word.

  • @mbbxx
    @mbbxx 2 роки тому +16

    Perl is the original "Write once, read never again" language

  • @laughingvampire7555
    @laughingvampire7555 Рік тому +2

    one great feature you didn't mentioned and probably because is an obscure one, is that when you read any data that is not local, like data from the web, Perl throws always an error if you try to use it without parsing it with regex. Perl forces you to parse input with a regex, Perl called this "tainted variable" so to untaint it you use the regex, and this made sites written in Perl a lot more secure than with PHP, and for many people this was one of the reasons to make fun of PHP. The problem is that noobs still wouldn't know what to look for with the regex, but it helped them to find the documentation to avoid sql injections.

  • @SleepingInsomniac19
    @SleepingInsomniac19 2 роки тому +6

    “Rej-ex”, ah yes a Rejular expression... just like a jraphical image format

  • @JThompson_VI
    @JThompson_VI 2 роки тому +4

    You've finally made it, it's time for APL in 100 seconds.

  • @saidbakr
    @saidbakr 2 роки тому +5

    The matter of marketing. This is the great issue with Perl indeed.

  • @IngwiePhoenix_nb
    @IngwiePhoenix_nb 2 роки тому +177

    RegEx still breaks my braincells but man do I ever love Perl's syntax. I dont know what it is, but it just feels so well thought out. I learned a tiny bit of Perl when I read that PHP was influenced by it, and I immediately saw why and what. But I have not heared of Raku, gonna give it a look!

    • @b.wallet5295
      @b.wallet5295 2 роки тому +15

      You better don't..

    • @ipodtouch470
      @ipodtouch470 2 роки тому +22

      I don’t know how regex works underneath the hood but man after learning it has saved me so much time when parsing strings.

    • @HandcartRule46
      @HandcartRule46 2 роки тому +10

      RegEx is pretty easy, but you do need the proper resources to learn it.

    • @ali-om4uv
      @ali-om4uv 2 роки тому +1

      @@HandcartRule46 any tips?

    • @II-ii2um
      @II-ii2um 2 роки тому +3

      @@HandcartRule46 yes, pls enlighten us mere mortals good sir

  • @laughingvampire7555
    @laughingvampire7555 Рік тому +2

    I love perl, is one of the reasons I chose ruby over python back in 2004 because the ruby man page says "inspired by lisp and perl" and that was a selling point to me.

  • @cypher5419
    @cypher5419 2 роки тому +59

    *If human beings evolved new organs as frequently as they do Javascript frameworks, you can bet the doctors would be Googling it too.*

  • @xbmarx
    @xbmarx Рік тому +2

    I know everyone dunks on cryptic Perl one-liners, but that's a design decision. It makes it so system admins can copy/paste whole ass programs them into terminals.

  • @Nawamumbwe
    @Nawamumbwe 2 роки тому +7

    As someone who is transitioning to an intermediate dev, it's so awesome being able to follow along with content like this and pick stuff up and process it while listening along and not pausing the whole time to digest some technical concept.
    I think I can add Perl to my CV now.

  • @abh1yan
    @abh1yan 2 роки тому +86

    Never knew Perl is this useful, I'll definitely have a look.

    • @bobDotJS
      @bobDotJS 2 роки тому +15

      I really don't think it's worthwhile. I think that if you didn't realize it was useful, you probably aren't in a position where it will change your workflow.
      Maybe if you're writing crazy BASH scripts that are pushing the limits of the language, then you'd probably still choose something like Go long before it makes sense to use Perl.

    • @bryanwong1766
      @bryanwong1766 2 роки тому +15

      @@bobDotJS Perl has the advantage of being self-included in Linux and MacOS - so if you just want to get things done and bash isn't good enough, Perl is indeed a good solution.

    • @Jebusankel
      @Jebusankel 2 роки тому +8

      Check out Raku instead. It fixes so many warts in Perl and has lots of amazing farsighted features.

    • @milankoncsik9546
      @milankoncsik9546 2 роки тому +3

      For one liners or short scripts it's decent, but as soon you work on something relatively complex it gets really messy.

    • @abh1yan
      @abh1yan 2 роки тому +3

      @@milankoncsik9546 Yeah I'll better write assembly or maybe binary in case..

  • @neddev2990
    @neddev2990 2 роки тому +2

    Nice video, it's great to see perl being explored and described concisely by popular content creators here on youtube. I made a similar video to this a month or two ago... yours is a LOT better ;)

  • @undisclosedperson3871
    @undisclosedperson3871 2 роки тому +4

    Say what you will about Perl, I enjoy the feature that enables a monthly dump truck full of money to show up at my house.

  • @afganitia
    @afganitia 2 роки тому +2

    Love the camel!
    Pd: Next fortran please!

  • @luizvaz
    @luizvaz 2 роки тому +17

    In 2003 I was working to a telecom. There was one job that took 72 hours to complete. They put me on charge to optimize it. I was learning PERL, so I decided to give a try. It was already installed by default on HPUX. After all, the same job spent only 6 hours.
    In the end, they took a look in the code and said: "What the heck you used to write the script?"
    And they asked me to rewrite in ANSI C, because no one was able to understand it. 😂😂😂

  • @itzdm0r3
    @itzdm0r3 2 роки тому +2

    I like Perl because it is a great gateway to learning C.

  • @_zetrax
    @_zetrax 2 роки тому +3

    I used it once to parse webpages, It is actually cool

  • @atlantaguitar9689
    @atlantaguitar9689 Рік тому +2

    I wrote a ton of Perl code in the late 90s into the early 2000s. I used it on web sites, in system administration, and in bioinformatics projects.

  • @Shazam999
    @Shazam999 Рік тому +3

    Was the second "internet" programming language I learned. Was disappointed when I found out literally no other languages have reg-ex by default.

  • @Osbornesupremacy
    @Osbornesupremacy 2 роки тому +1

    Perl Advocate: But does you language have...Autovivification!?!?!?!?
    Average Developer: Well, considering that I haven't heard of that term until 1 second ago, no it doesn't.
    Perl Advocate: Checkmate, bitch.

  • @nutronstar45
    @nutronstar45 2 роки тому +6

    1:14 *ussr anthem intensifies*

  • @stardustbiscuits
    @stardustbiscuits 2 роки тому +1

    I need a nim in 100 seconds video to stay alive

  • @raz0229
    @raz0229 2 роки тому +17

    According to Stack Overflow, Perl is the most paid programming language of 2022

    • @IronTeddyBear
      @IronTeddyBear 2 роки тому +4

      Yes, but Perl jobs are few and far between.

    • @dukemagus
      @dukemagus 2 роки тому

      No wonder. You need to be really good to translate old perl scripts and understand everything they do

    • @neddev2990
      @neddev2990 2 роки тому +2

      It's actually not too difficult to get a Perl job. The reason they are highly paid is because most people are not looking for perl jobs yet companies have a bunch of legacy perl code. So they need someone to work on it. So once you learn perl you can be fairly confident that you will be able to find a good job :)

    • @CARPB147
      @CARPB147 Рік тому

      It's all about *supply* and demand. Economics 101. Most people just focus on demand as in "where are most jobs asking for" without considering that abundant jobs like JavaScript or Python also have the most supply of cheap programmers coming from populous countries like India. It's a crowded field out there and competition is intense for those.

  • @JackDespero
    @JackDespero 7 місяців тому +2

    The funniest part about Perl is that I have always associated it with the Camel.
    And a couple of months ago I learnt that the actual mascot is an onion.
    The camel is just from the O Relly book.

  • @RandalLSchwartz
    @RandalLSchwartz 2 роки тому +5

    The syntax for accessing elements of arrays and hashes is wrong. Someone didn't read my books..... :)

  • @flippert0
    @flippert0 Рік тому +1

    I learned programming in earnest with PERL back in 1995/96 (after limited exposure to BASIC on a C64 back in school in the 80s and some toy stuff with Turbo Pascal in the early 90s). I don't think, PERL was the best way to start, but I did some administrative and early Web stuff afterwards. PERL is still unmatched in the 'Q&D one-liner' department. Not sure what lead to its eventual decline: arcane "Sigil" variables? Half-baked OOP? 15+ year development of Raku successor? Probably all of them. And let's not forget that with Python you had a much more beginner-friendly language at the start of the 2000s.

  • @LegendaryJew
    @LegendaryJew 2 роки тому +3

    PERL for life!

  • @mrreese2342
    @mrreese2342 2 роки тому +2

    Looks like a good language, maybe i'll add it to my summer classes in the college that i've created in my room

  • @akshattamrakar9071
    @akshattamrakar9071 2 роки тому +6

    my/our made more sense to me then anything else I've ever used like var, let, global

  • @captureimagery
    @captureimagery 2 роки тому

    Sometimes I need a refresher when programming. This is the channel for that.

  • @tanmay______
    @tanmay______ 2 роки тому +31

    I needed something other than python for string manipulation, this is great!

    • @bg-sj9tx
      @bg-sj9tx 2 роки тому +7

      Why? Python gets the job done

    • @user-he4ef9br7z
      @user-he4ef9br7z 2 роки тому +2

      @@bg-sj9tx Python is slow, heavy and gay.

    • @flybackrs
      @flybackrs 2 роки тому +3

      Python sucks for string parsing. Perl is a lot easier with regexes being first-class citizens, sane string interpolation, useful operators like defined-or, and stuff like that.

    • @kindlin
      @kindlin Рік тому

      @@flybackrs
      I kept hearing _regex_ thrown around and finally googled it. _What the fuck!_ I have almost no idea how I would begin to parse that. It literally looks like you facerolled around the keyboard or something. And these are.... useful? I... take it?

    • @CARPB147
      @CARPB147 Рік тому

      @@kindlin Just so you know, regular expressions were not invented by Perl. They are essential finite state automata used for text pattern matching. The UNIX/Linux/MacOS command *"grep"* stands for "general regular expression parser," a *basic tool* of UNIX programming. Perl just advanced the state-of-the-art of regexes. Python, Java and others based their own regex implementations on PCRE, and you should know that stands for "Perl-Compatible Regular Expression." YES, they are *hugely* useful and I couldn't even begin to tell you in a comment how much so they are. They are even used in text editors to find data in a file, that's how much they are used. So learn before you jump to judgement on something you don't know or understand.

  • @bluesquare23
    @bluesquare23 9 місяців тому +2

    The syntactic sucralose in perl is just 😙👌

  • @pjf7044
    @pjf7044 Рік тому +2

    I think Perl is super underrated

  • @Nikhil-Tomar
    @Nikhil-Tomar 2 роки тому +4

    Looking at perl now, I might give it a go it didn't seem like java at all and that is good.

  • @inacpan6706
    @inacpan6706 5 місяців тому +2

    Any sufficiently advanced Perl script is indistinguishable from magic.

  • @freedom_aint_free
    @freedom_aint_free Рік тому +6

    Raku is even better than Perl 6, it's like the production ready version at the end of the line of prototypes. I've found difficult to reach a conclusion about Raku thought, just because it has everything and them some to it, it's a really really feature reach language, and although I don't like it in languages e.g. C++, just because the language is always surprising you no matter how long you've been programming in it, Raku seems to have done many many things right.

  • @ameteuraspirant
    @ameteuraspirant 2 роки тому +1

    good to know that weird al is branching out to other avenues .

  • @philippefutureboy7348
    @philippefutureboy7348 2 роки тому +22

    This syntax sounds like a maintenance horror story :D
    Glad you included zombies, it's very on topic 😂

    • @pramod7426
      @pramod7426 2 роки тому +2

      You are absolutely correct worked on perl once, never again. It's OOPS is beyond horror

    • @valerie4275
      @valerie4275 2 роки тому +1

      @@pramod7426 why do you think it's called oops?

  • @KgfLikia
    @KgfLikia 2 роки тому +2

    0:12 namaste? in greek means: "here we are" lel... where are we? Is this a function to find index of an element in array? wtf

    • @thelibgadmin3791
      @thelibgadmin3791 2 роки тому

      It is hindi word
      Used for greeting when you meet someone

  • @lucaspunzengruber
    @lucaspunzengruber 2 роки тому +3

    I started to maintain a 20 year old legacy server side web app written in Perl, which generates web pages by printing html to the standard output. An absolute nightmare

    • @jcoterhals
      @jcoterhals 2 роки тому +5

      Well, in your case perl isn’t the problem. The organization that keeps legacy code running for 20 years is.

    • @CARPB147
      @CARPB147 Рік тому +1

      @@jcoterhalsThat is correct. Some functions need to be re-factored or modernized a bit at a time.

  • @kimandre336
    @kimandre336 2 роки тому +2

    I remember from a vocational class where I learned Microsoft's Powershell. The instructor ranted about Perl for 10-15 straight minutes. The abridged version of this is
    "Now Powershell has some influences, one of them happens to be a programming language called Perl. Perl was created by a linguist, as in not-a -programmer background kind of computer scientist wannabe, who has some mild obsession with Unix shell commands and a deep obsession with another programming language called AWK. He pretty much merged his interests with C and some other popular languages. So you can see a very tiny influence of Perl in Powershell. The bigger point is that Perl is so unusable for anybody today to the point that its steep learning curve indirectly inspired other programmers to develop more approachable programming languages for the market today. So, thank you, Perl?"

    • @CARPB147
      @CARPB147 Рік тому

      The instructor you got was obviously an imbecile. My condolences. Perl's learning curve is actually quite shallow! You can write simple scripts within a few minutes. The learning curve, however, is *long* (not "steep"!) depending on how deep you need to go into the bushes for its more elaborate or powerful features. That's the *real* skinny.

  • @pupfriend
    @pupfriend 2 роки тому +20

    Little known fact, the guy who invented regex also invented waterboarding.

  • @martin0499
    @martin0499 2 роки тому +2

    Ada in 100 seconds would be interesting

  • @josefmuller86
    @josefmuller86 2 роки тому +8

    Perl gets the job done, but nobody knows why

    • @CARPB147
      @CARPB147 Рік тому +2

      Only the woefully uninformed don't.

  • @pedrobatista370
    @pedrobatista370 2 роки тому +1

    After the dromedary comes the camel. Is OCaml (strongly typed pl) next?

  • @IrredeemableGhost
    @IrredeemableGhost 2 роки тому +3

    Man, I love Perl

  • @devpanda_js
    @devpanda_js 2 роки тому +1

    I wrote a script and started recording. Then this video dropped

  • @thatsalot3577
    @thatsalot3577 2 роки тому +3

    I honestly think 'my' and 'our' sound cooler than public and private.

    • @Birb-
      @Birb- 2 роки тому

      our $program;
      ussr anthem

  • @madmartigan1634
    @madmartigan1634 2 роки тому +1

    Thought it was going to be OCAML from a glance at the thumbnail

  • @inurear
    @inurear 2 роки тому +4

    I love perl and i hate how it's lost adoption. I am slowly migrating all my powerful perl scripts to hacky alternates that do less with more code and includes. Gah

    • @xoell388
      @xoell388 Рік тому

      Can you share more about your work

    • @CARPB147
      @CARPB147 Рік тому

      Why do that? Perl is actively maintained with new versions released periodically which won't break backwards compatibility. And it comes installed already in Linux and MacOS. For systems where it is not installed, it can be easily set up with Homebrew.

  • @KingXennodia
    @KingXennodia 2 роки тому

    Omg you have no idea how much k needed this

  • @danieljacobs446
    @danieljacobs446 2 роки тому +3

    Mainly used for CGI: Yup, the vast majority of websites I maintain at my job use HTML::Mason with Perl. I'm trying to write newer websites using more modern languages though.

    • @JBBell
      @JBBell 2 роки тому +2

      Jesus, do the pages show their age using radio-carbon dating?
      I kid. I remember HTML::Mason from the early aughts but that’s millenia ago in technology development years. I saved a couple businesses a lot of money using Perl to double-check credit card transaction records. I’ve forgotten a lot since getting into Python.

    • @ShawnThuris
      @ShawnThuris 2 роки тому +1

      I work on one of those myself. The thing is, if you have a massive number of pages and need to do HTML templating, and the templating/component system works and is fast, it doesn't really matter how old it is. The template engine doesn't care what html, css and js you're putting out, and if your whole setup is tuned well users will have no idea it was written before git existed.

  • @Suraj-tz3oq
    @Suraj-tz3oq 2 роки тому +2

    Man you are great.. want a full length tutorial

  • @maythesciencebewithyou
    @maythesciencebewithyou 2 роки тому +3

    The language is good with strings, that's why it was the most popular language with biologists for a time.

    • @RandalLSchwartz
      @RandalLSchwartz 2 роки тому +1

      Yes, the human genome project's technology was directed by Dr Lincoln Stein, having both an MD and CS degree, and preferred Perl for the task.

  • @tinmank
    @tinmank 2 роки тому

    Thank you for your time to make these videos.

  • @atalocke
    @atalocke 2 роки тому +10

    Obviously we need a 100s for Raku. I had some other ideas recently for 100s. Free for you to use of course.
    * Clojure
    * Crystal
    * Scala
    And then maybe you could move on to build tools like make, basil, and Groovy? 👀

  • @DavidL-ii7yn
    @DavidL-ii7yn 11 місяців тому +1

    It's like describing pure beauty in 100 seconds. But hashes are a central feature of Perl, and you didn't even mention it, or the elegance that is Perl objects.