Slashdot Mirror


Perl is the Most Hated Programming Language, Developers Say (theregister.co.uk)

Thomas Claburn, writing for The Register: Developers really dislike Perl, and projects associated with Microsoft, at least among those who volunteer their views through Stack Overflow. The community coding site offers programmers a way to document their technical affinities on their developer story profile pages. Included therein is an input box for tech they'd prefer to avoid. For developers who have chosen to provide testaments of loathing, Perl tops the list of disliked programming languages, followed by Delphi and VBA. The yardstick here consists of the ratio of "likes" and "dislikes" listed in developer story profiles; to merit chart position, the topic or tag in question had to show up in at least 2,000 stories. Further down the down the list of unloved programming language comes PHP, Objective-C, CoffeeScript, and Ruby. In a blog post seen by The Register ahead of its publication today, Stack Overflow data scientist David Robinson said usually there's a relationship between how fast a particular tag is growing and how often it's disliked. "Almost everything disliked by more than 3 per cent of Stories mentioning it is shrinking in Stack Overflow traffic (except for the quite polarizing VBA, which is steady or slightly growing)," said Robinson. "And the least-disliked tags -- R, Rust, TypeScript and Kotlin -- are all among the fast-growing tags (TypeScript and Kotlin growing so quickly they had to be truncated in the plot)."

337 of 472 comments (clear)

  1. Ruby... by Anonymous Coward · · Score: 1, Interesting

    ...is worse.

    1. Re:Ruby... by Anonymous Coward · · Score: 2, Insightful

      What's wrong with Ruby? I find it a bit weird, but not hate-worthy. Perl I find unreadable, along the lines of FORTH. A write-only language.

    2. Re:Ruby... by Shompol · · Score: 1

      Ruby is ahead of Perl, in the "medium-disliked" category. I find it amusing that Ruby was conceived as a Python replacement, yet fell hopelessly behind in the popularity contest.

    3. Re: Ruby... by Codeblox · · Score: 1

      Both are awful because they're designed for niiggers. Use a real language developed by white people, such as Java.

      Got any proof of that?

    4. Re:Ruby... by Anonymous Coward · · Score: 4, Interesting

      The problem is because people use the wrong tools for things. This is not a definitive list:

      Perl is ONLY useful today as a server-sided processing script. If you are using Perl on your front end, you will get dependency hell as your server updates things arbitrarily. Perl breaks super-frequently due to the move from manual updates to automatic updates of third party libraries/ports. Thus if you don't update Perl and everything that uses Perl at the same time, mass-breakage. Thus "Don't update Perl you moron"

      To that end PHP is on the other side of that coin. PHP is only useful for websites and nothing else. If you run PHP as a backend script it will typically time out, or run out of memory, because it's literately not designed to live very long. Unfortunately the monkeys that make Wordpress themes, plugins, and "frameworks" for PHP don't understand this. Symfony is popular, Symfony also is a huge fucking pain in the ass. Doctrine, gobbles up memory and gets exponentially slower the longer the process runs.

      Thus "Don't update Wordpress" mantra, because good lord there are a lot of shitty plugins and themes. PHP's only saving grace is that they don't break shit to cause dependency hell, they just break API's arbitrarily, thus rendering old PHP code broken until you update it, or abandon it.

      Ruby is a poor all-purpose tool. In order to use it with the web, you basically need to have the equivalent of php-fpm for Ruby running, and if your server is exhausted, just like php, it just rolls over and dies. Ruby developers are just like Python developers (next) in that they don't fundamentally understand what they are doing , and leave (crashed) processes running perpetually. At least PHP gets a force-kill after a while. Ruby Gems create another dependency hell. In fact good luck getting Ruby on a CentOS installation, it will be obsolete and broken.

      Python, has all the worst of Perl's dependency hell with Ruby's clueless developers. Python simply doesn't exist on the web, but good lord so many "build tools" love to use it, and when it gets depreciated, whole projects that aren't even developed in Python, stop working.

      Which leads me to NodeJS/NodeWebkit. Hey it's Javascript, everyone loves javascript. If you're not competent enough to write Javascript, turn in your developers license. Despite that, just like Perl, Ruby and Python, setting up a build environment is an annoying pain in the ass. Stick to the web browser and don't bother with it.

      So that covers all the interpreted languages that you will typically run into on the web.

      Java is another language that sometimes pops up on servers, but it's more common in finance and math projects, which are usually secretive. Java, just like everything mentioned, breaks shit with every update.

      C is the only languages that haven't adopted the "break shit with every update" because C can not be "improved" on any level. Most of what has been added to the C API deals with threading and string handling. At the very basics, anything written in C can compile on everything as long as the platform has the same functions built into the runtime. Which isn't true when cross-compiling between Linux and Windows. Windows doesn't "main()" while Linux has a bunch of posix functions that don't exist on Windows.

      Ultimately the reasons all these languages suck comes right back to dependency hell. A language that has a complete API, requiring no libraries, simply doesn't exist, and isn't future proof anyways.

      People hate a lot of these languages because they don't adhere to certain programming habits they have, like object oriented "overide-bullshit", abuse of global variables, or strongly typed languages. Thus what should work in X language, doesn't work in Y language, because that language simply does it differently.

      Like weakly typed languages are probably supreme, at the expense of runtime performance, because it results in less errors. That said, =, == and === are different. In a strong type language, you can't fuck that up. In a weak type language, you can make mistakes like if(moose=squirrel){blowshitup();} and the script will assume you want to make moose the value of squirrel, AND run blowshitup() regardless of the result. Now if you meant ===, no type conversion.

    5. Re: Ruby... by sce7mjm · · Score: 3, Insightful

      As is often the case your doing it wrong.

      if you are having problems with Perl being updated when your server updates you are probably using the Perl that was installed as part of your system to run your app.

      Perlbrew now makes it simple to run an independent Perl for a single user/service that only updates when you tell it to.

      What you describe is no different than if your app uses a c runtime library that is over written by the system during an update.

    6. Re:Ruby... by Darinbob · · Score: 1

      Ruby is a nice language, it has very close similarity to a textual Smalltalk. Do not confuse Ruby with Ruby on Rails.
      Not that anyone using high level languages actually programs anymore, rather they just tie together libraries and frameworks, so that when the bitch about the language they're really bitching that they don't like the frameworks.

    7. Re: Ruby... by TechyImmigrant · · Score: 2

      >As is often the case your doing it wrong.

      As is often the case you're doing 'your' wrong.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
    8. Re:Ruby... by Darinbob · · Score: 4, Interesting

      You can write Forth code that is readable. Once you've got the reverse notation figured out it is very simple to deal with. The real problem with Perl is that the same variable name can mean many different things depending upon the prefix character and the context in which it is used. This can lead to a lot of subtle bugs, leads to a steep learning curve, and even a few months of vacation from the language can result in being unable to read one's own code.

      On the other hand, Perl was never designed to be a typical computer language. I was berated by Larry Wall over this, he told me "you computer scientists are all alike". His goal was to get a flexible and powerful scripting language that can be used to get the job done. And it does just that - people use Perl because it can get stuff done. When it was new on Unix it was the only thing that could really replace that nasty mix of sh+awk+ed scripting that was common, instead being able to do all of that in a single script, and that led to its extremely fast rise in popularity in the early 90s. Yes, it's an ugly syntax but it's strong underneath, like the Lou Ferrigno of programming languages.

    9. Re:Ruby... by Obfuscant · · Score: 1

      I was berated by Larry Wall over this, he told me "you computer scientists are all alike". His goal was to get a flexible and powerful scripting language that can be used to get the job done.

      Then he must be rolling over in his grave considering the way Perl 6 has been taken over by computer scientists.

      And it does just that - people use Perl because it can get stuff done.

      That's why I use it.

    10. Re: Ruby... by Obfuscant · · Score: 1

      if you are having problems with Perl being updated when your server updates you are probably using the Perl that was installed as part of your system to run your app.

      If you have that kind of problem, they you are programming in some very esoteric, bleeding edge parts of Perl. I have never had a perl script break because I updated the OS. I also use perl to serve all kinds of dynamic web content.

      What you describe is no different than if your app uses a c runtime library that is over written by the system during an update.

      If you have an OS that installs a non-compatible C runtime library during an update, your OS is doing it wrong. Changing such a basic system library should only be done when installing a new OS, not during any update.

    11. Re:Ruby... by Aighearach · · Score: 1

      As a Ruby programmer I have to say that I agree entirely, but the good news is that programming is best kept between the programmer and the computer; you have to learn from documentation, stop trying to ask the Ruby programmers.

      Ruby is simply too easy a language for Ruby programmers to have time to suffer idiots, because the language is easy enough for most of the idiots. They just kept pouring through the door until we started shouting at them to go read a fucking book and eventually they started switching to JS.

      If you want to use an easy language and still be able to have a community where experienced programmers help new people, you have to be able to chase off the people who are simply not well suited to programming or else they will totally swamp everything will "hello world" questions.

      With Perl there is so much to confuse the idiots that they run away just from looking at the code, allowing the programmers to have a more decent communication environment. After about 5 years of using Perl I started running away from my own code; that's when I switched to Ruby. Also, Ruby has much better C integration and most of the Ruby stdlib is just wrappers around the C stdlib.

    12. Re:Ruby... by Aighearach · · Score: 1

      Living people rarely roll over inside graves.

      As Larry Wall himself described it, Perl 5 was his rewrite of Perl 4, and Perl 6 was the community's rewrite of Perl 5.

      I doubt he's actually upset at all that everybody is still using Perl 5 because his ideas were better than "the community's" horse-by-committee. Perl 6 was created because there were things the community wanted that were different than what Larry wanted from Perl, that's the reason the community was doing it; Perl 5 was already a mostly finished language.

    13. Re:Ruby... by Aighearach · · Score: 1

      Ruby wasn't a Python replacement, it was more of a Perl replacement, and Python was simply rejected as a Perl replacement. That's why Python is in the story.

      The goal was Perl/C style syntax and Smalltalk style OO semantics.

      A few things were borrowed from Python, but it wasn't a main influence and doesn't make it into the one-line "why" statements.

    14. Re:Ruby... by tombeard · · Score: 1

      Wouldn't he need to die first. As is, you can just ask him.

      --
      The reason we subjugate ourselves to law is to better procure justice. If law does not accomplish this purpose then it m
    15. Re:Ruby... by Rakarra · · Score: 1

      But python did replace Perl, completely. I'm not sure why this would be controversial.

    16. Re:Ruby... by Ian_Bailey · · Score: 2

      Ruby was inspired by Perl, among other languages. It was in particular not inspired by Python, at least according to it's creator:
      http://www.ruby-lang.org/en/ab...

    17. Re:Ruby... by Princeofcups · · Score: 1

      The problem is because people use the wrong tools for things. This is not a definitive list:

      Perl is ONLY useful today as a server-sided processing script. If you are using Perl on your front end, you will get dependency hell as your server updates things arbitrarily. Perl breaks super-frequently due to the move from manual updates to automatic updates of third party libraries/ports.

      I never use the PAM libraries, so this is not a problem. I could never understand why people take the time to fight with someone else's code that rarely does exactly what I need instead of writing their own little subroutine.

      --
      The only thing worse than a Democrat is a Republican.
    18. Re:Ruby... by K.+S.+Kyosuke · · Score: 1

      quote:. A language that has a complete API, requiring no libraries?

      That sounds like a contradiction to me. It makes no sense to even ask for that since a library is the name of the thing implementing any API.

      Like weakly typed languages are probably supreme, at the expense of runtime performance, because it results in less errors. That said, =, == and === are different. In a strong type language, you can't fuck that up. In a weak type language, you can make mistakes like if(moose=squirrel){blowshitup();} and the script will assume you want to make moose the value of squirrel, AND run blowshitup() regardless of the result. Now if you meant ===, no type conversion.

      I'm not quite sure how that is related to type discipline (even though that is important, too). It's more like poor operator set design. Who the hell decided that "=" will stand for assignment? (And equality operators have been shown to be particularly tricky to get right, actually, even in languages with better type discipline. What does it mean that X is equal to Y? Do we care about physical representations or not? Etc. etc.)

      --
      Ezekiel 23:20
    19. Re:Ruby... by Aighearach · · Score: 1

      Python became the default language for beginners with minimal programming experience, so it gets used in teaching introductions to a lot of different programming topics, and it is certainly used by hobbyists a lot, but I don't really see the traditional use cases for Perl getting replaced by Python very often.

      Once upon a time I wrote web scripts in Perl, but now if I need to make a web interface I'm either using Ruby on a server or C on a microcontroller. Hobbyists often are using Lua or Python on the same microcontroller.

    20. Re: Ruby... by p91paul · · Score: 1

      Ruby code can be confused with python code, their sintax is basically the same...IDK how he got that without being influenced!

    21. Re:Ruby... by gustygolf · · Score: 1

      If you are using Perl on your front end, you will get dependency hell as your server updates things arbitrarily. Perl breaks super-frequently due to the move from manual updates to automatic updates of third party libraries/ports. Thus if you don't update Perl and everything that uses Perl at the same time, mass-breakage. Thus "Don't update Perl you moron"

      I've been a Perl user for fifteen years, and I honestly don't get what you are trying to say here. Neither Perl nor its modules update automatically, and they never have.

      --
      "Slow Down Cowboy! It's been 58 minutes since you last successfully posted a comment" -- slashdot, driving users away.
    22. Re: Ruby... by gustygolf · · Score: 1

      I'm curious. I see perlbrew recommended a lot. What does perlbrew achieve that a regular local Perl installation wouldn't? It's trivial to install a custom Perl version locally on *nix.

      --
      "Slow Down Cowboy! It's been 58 minutes since you last successfully posted a comment" -- slashdot, driving users away.
    23. Re: Ruby... by budgenator · · Score: 1

      >As is often the case your doing it wrong.

      As is often the case you're doing 'your' wrong.

      And he wonders why his scripts blowup when he sets
      use(strict);

      --
      Apocalypse Cancelled, Sorry, No Ticket Refunds
  2. Problems by saphena · · Score: 5, Funny

    You have a problem and you think Perl provides the solution. Now you have two problems.

    1. Re:Problems by TWX · · Score: 2

      I suppose this contributes to why I don't want to learn Perl; I don't program for a living but I do use various types of scripting for work, usually because I've had to reduce captured text down to something manageable, and if I find that I do the same replacement procedures in vi all of the time it makes sense to script it where I can do the processing from the command line without ever opening a text editor. When I look up how to do something with sed or other such tools I find a lot of other people that have asked questions for using a particular tool, only for answer to be, "you can do it in perl! Here's my script!" followed by a bunch of lines of code with no explanation for what they do.

      The original asker didn't ask how to do it in any language or with any command, they asked how to do it with a specific command. It's like asking, "How many of you like chocolate ice cream?" for someone to reply, "Strawberry is great!" Not actually answering the question. The problem is that if a non-answer stands, then people may shy away from actually answering the question, or from explaining why said tool may have problems with the task at hand.

      As an example, in vi I match patterns that span two lines, and it's easy to specify the linefeed as part of the string to search for, even when using the vi invocation of sed. By contrast the command line invocation of sed interprets the linefeeds differently than when used through an editor, so the commands that I tested in vi and tried to translate into shell-invoked didn't work. It took a lot of different search terms to finally find an explanation of why linefeeds were a problem, because I kept getting fanboy responses about perl.

      --
      Do not look into laser with remaining eye.
    2. Re: Problems by eliphalet · · Score: 1

      Microsoft created their own annoying scripting language, PowerShell.

    3. Re:Problems by hey! · · Score: 1

      I remember when PERL was a new thing, being distributed on USENET (a pre-Internet modem-to-modem connection) on comp.sources.misc. It filled a very useful niche for writing filter-type programs that heretofore had been written in a mix of shell script, awk, and sed. What it was good for was written right there on the tin: Practical Extraction and Report Language.

      I also remember when the cgi-bin interface was proposed; before that there was no way to handle user input and programmatically generate dynamic output with HTML and the web. PERL fit in very nicely then as a substitute for writing standalone C programs to handle cgi-bin requests, because that was exactly the kind of stuff people had already been using it for.

      But very soon thereafter we began to think of web programming less in terms of discrete input-handling programs, and more in terms of systems that had complex, persistent state and complex multi-step behaviors. And people continued to write in PERL into this era because they knew it, and it was still very handy for many of the kinds of "generate HTML from a stream of data" tasks you still had to do in a "web application". Yet it seems to me that it was around this time the wheels began to come off the bus.

      Armchair language designers probably have their theories , and I suppose many of those theories have some merit, but I've begun to suspect the problem with languages is often rooted in a kind of culture that grows up around each language. Many of the problems with Java, for example, I believe to come not from the features of the language, although there is certainly grounds for criticizing it, particularly earlier versions. But really Java's problem is that the people who used it developed a culture of over-engineering things; a preference for the verbose and clunky.

      PERL, I suspect, has the opposite kind of cultural problem. Of course it's been over ten years since I've had to look at any PERL code so I can't speak to what people have been up to recently; but back in the day when PERL was hot for web applications I had to dig into the code for a number of PERL applications. While there might have been "more than one way to do it", for a lot of working PERL programmers that was an excuse for declaring the job done when a correct output had been generated. And that may be a legacy of the early days of PERL, when most of our jobs were generating discrete, stand-alone information products and your productivity was measured in how many you churned out. Back then people didn't spend much time thinking about non-functional requirements.

      I've never hated PERL, but I sure have hated working on PERL programs.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    4. Re: Problems by plopez · · Score: 1

      Which I refer to as "COBOL" for Windows due to the syntax. :D

      --
      putting the 'B' in LGBTQ+
    5. Re:Problems by Kremmy · · Score: 1

      It's impractical to bring out the power saw when the paring knife will slice the apple just as well.
      Why waste so much time writing a script for text processing in perl when you can just use sed to process the stream?

    6. Re:Problems by whoever57 · · Score: 1

      Let me give you a tool analog.

      You are asking: "how can I insert this screw using a hammer?" It's possible, but the best way to insert a wood screw is using a screwdriver.

      Perl is the screwdriver and sed is the hammer.

      --
      The real "Libtards" are the Libertarians!
    7. Re:Problems by TWX · · Score: 1

      Your analogy doesn't pass muster when one considers that sed is a text stream editor in its very nature, and only a stream editor, when the purpose of the question is to edit streams,

      Perl contains stream editor capabilities, but is not a single-purpose stream editor.

      A more accurate analogy, sed is a #2 philips screwdriver. Perl is a multitool. The job to be done requires a #3 philips screwdriver. Neither tool perfectly does the job, though both can be made to do the job.

      --
      Do not look into laser with remaining eye.
    8. Re:Problems by Darinbob · · Score: 1

      See, that's the problem with stack overflow and things like it. They love to answer questions, but they don't particularly care to give a correct or relevant answer; as long as someone rates up their answer they are winning in the social media game.

      Perl became popular originally because it would replace a mixture of sh mixed in with awk and sed with a single language. Why use an sh script to tie together a handful of auxiliary scripts when you could just use one script? It reduced the amount of work needed. I'm not saying this as a fanboy of Perl, but it's a perfectly usable tool if you already have it installed on your system. (and the sh+awk+sed combos were used precisely because those were pre-installed and not because they thought awk was awesome)

    9. Re:Problems by Darinbob · · Score: 1

      The fact that we have to explain what USENET is on slashdot is very depressing.

      As for Perl, a lot of the syntax was likely due to it needing to be a replacement for other tools used in a Unix command. Ie, have a single line Perl script that can be put into a pipe. Such as "myprog | perl -e '$%!@#$foo' | myotherprog". As such, you get many different ways to write the top level loop, as opposed to the Python cultural dogma of "there's only one way to do things!" You don't have to write the "begin" or "end" and put things in procedures, instead it's a "git-er-dun" language.

      Ie, that's a big chunk of what "scripting language" really means.

      Of course, I don't think Larry Wall at the time ever considered that some day people would base entire company product lines on top of full blown Perl applications or back ends.

    10. Re:Problems by Aighearach · · Score: 1

      The problem was we had advanced server tools like mod_perl and no high level frameworks that had the features to work for the full range of web applications, so we were cobbling web apps together with a bunch of different crap out of CPAN and everybody had a different basket.

      RubyOnRails came out and showed everybody the power of frameworks, and they jumped off of Perl to Ruby, or else they used one of the many copies of RoR for other languages. If the first popular web framework had been PerlOnRails, or if people had figured out the need for a better single framework sooner, then Perl would have continued to thrive in the web niche.

      I don't think it was a culture problem, it was mostly just timing. (That's only a user theory, I'm not an armchair language designer)

    11. Re:Problems by doom · · Score: 1

      Interesting analysis, except that the anti-perl snear campaign was in full-force long before Ruby on Rails became the latest fad.

    12. Re:Problems by eneville · · Score: 1

      Perl is a multitool. The job to be done requires a #3 philips screwdriver. Neither tool perfectly does the job, though both can be made to do the job.

      Close.

      Perl is a swiss army chainsaw. .http://www.catb.org/jargon/html/S/Swiss-Army-chainsaw.html

    13. Re:Problems by Aighearach · · Score: 1

      Why people snear is a whole different type of problem, though. Most of the people snearing were using C++ and everybody just laughed when they did it.

    14. Re:Problems by amorsen · · Score: 1

      Commonly used sed commands give the same results if you hand them to perl -p, and the regexp syntax is nicer in Perl. You lose a little bit on start up time, but if that bothers you, it's time to upgrade to a Raspberry Pi or something.

      --
      Finally! A year of moderation! Ready for 2019?
    15. Re:Problems by rp · · Score: 1

      I do this, too. I do it on sites that support multiple answers to the same question. The idea is to have a range of different answers to pick from.

  3. No COBOL? by Big+Hairy+Ian · · Score: 2

    I guess it's gone that far out of the mainstream

    --

    Build a Man a Fire, and He'll Be Warm for a Day. Set a Man on Fire, and He'll Be Warm for the Rest of His Life.

    1. Re:No COBOL? by Shompol · · Score: 3, Informative

      If you look at the original article -- cobol is there, as the 3rd most hated "tag".

    2. Re:No COBOL? by TWX · · Score: 2

      Dad was a COBOL programmer. He really liked the language, felt it was a lot more of a natural-language flow than languages like C. We still have an AS/400 at work and the few times I've seen COBOL code I can't help but agree with him, the actual structure of the syntax is a lot easier to follow as a layman, especially when the variable names are kept sane.

      --
      Do not look into laser with remaining eye.
    3. Re:No COBOL? by Waffle+Iron · · Score: 3, Insightful

      Yeah, but once you've been working in a field for a few months, you're no longer a layman. It's easier for a layman to use a Veg-O-Matic than a chef's knife, but anyone who works in the restaurant industry would pick the latter tool.

      A computer works using a set of mathematical logic operations. There's no need to dress them up to look like fancy talkin'.

    4. Re:No COBOL? by Darinbob · · Score: 1

      Remember that at the time COBOL came out, the only mainstream language was FORTRAN, doing data processing required hightly unportable and crude languages or straight up assembler. Yes it is verbose, but that meets some of the goals of making sure that someone other than the computer specialists could understand it (ie, managers).

    5. Re:No COBOL? by Darinbob · · Score: 1

      But the code should be shown to a "layman" also. Someone other than insular programmers should be looking at the code; managers, QA, etc. If there's business logic involved, you should never depend solely on the bottom level programmers. Thus people liked COBOL because it was easy enough (or at least easier) for others to read and understand the code and verify that it actually matches the specifications.

    6. Re:No COBOL? by TWX · · Score: 1

      And that basically was the market he worked in, financial systems that had to bridge the gap, so that people whose primary occupation was budgeting, or taxes, or other kinds of financials, where one is taking law and turning it into code. That code may even be directly reviewed by accountants or lawyers, so having something that is that legible is necessary to both initally comply and to allow editing to comply as laws and regulations change.

      If he was programming for science, at that time it would have been Fortran. He was trained in that too ("Computing Science" was taught as a science degree rather than as a business degree at that time) but his work didn't call for that.

      --
      Do not look into laser with remaining eye.
    7. Re:No COBOL? by bmarkovic · · Score: 1

      I think the whole thing boils down to utility.

      Perl has, well, to say gently, less than easily manageable syntax, that was still saner than Awk and Sed. So when it became ubiquitous on most systems many complex scripting has migrated from sh/bash+awk+sed to a much saner, more developer-friendly Perl interpreter, which then started to be used for scripting webpages as that was (at the time) the next big thing.

      Then came PHP and most new users never learned Perl to work solely with websites (and most never really got down-dirty to *nixen either as WAMP thingies enabled all that jazz on Windows).

      Then Python became ubiquitous on most systems, and because it provides an even nicer and cleaner development experience people generally started using Python for everything they used Perl for, then more and more often for things they used PHP for, and then Data Science thing came and Python ecosystem was very quick and efficient in embracing it so it started to become the dominating language of choice for quick-fixes and one-offs and as extension inevitably for more and more large, business-critical software development, as tt's often the case thus becoming an underdog competitor to Java much like PHP was/is.

      Now there are tastes and tastes but there is still some, if not generality, then at least majority or dominance. Sure, some people really love VB, but most don't. Sure, some people really hate Python but most don't.

    8. Re:No COBOL? by budgenator · · Score: 1

      COBOL was actually designed to be readable by Managers (non-IT) and Accountants. At the time the choices were Assembler, FORTRAN, Lisp and RPG, and of the group only FORTRAN was semi-readable by the layperson.

      --
      Apocalypse Cancelled, Sorry, No Ticket Refunds
  4. Perl Is Hated Because It's Difficult by alternative_right · · Score: 5, Insightful

    Perl is easy to write, hard to write well.

    Sort of like death metal.

    It is hated because you have to use independent thought, and have quality of thought, to deliver anything but flaky gibberish.

    At the same time, you can do anything with it, and across multiple platforms especially, it is the fastest way to get anything done.

    So eat it, Stack Overflow commenters. You're just people googling your way to a paycheck anyway.

    1. Re:Perl Is Hated Because It's Difficult by Doctor+Memory · · Score: 4, Informative

      And once you want to move beyond some simple automation scripts, you find that Python doesn't have the performance to handle anything more taxing.

      --
      Just junk food for thought...
    2. Re:Perl Is Hated Because It's Difficult by Anonymous Coward · · Score: 1

      Except the code for the computational heavy lifting in TensorFlow is written in CUDA, which, I can guarantee you, is nothing like Python.

    3. Re:Perl Is Hated Because It's Difficult by Anonymous Coward · · Score: 4, Interesting

      Perl doesn't encourage or discourage you to write good or bad code. What it does very well is work with the philosophy of DWIM (Do What I Mean). Importantly, it doesn't throw a giant pile of (effectively) RFCs with an accompanying Nazi yelling, "YOU VILL VRITE CODE DIS VAY." at you the way Python does. I've seen great Perl code and poor Perl code. I've seen great Python code and poor Python code. A shitty developer writes shitty code and doesn't read documentation. A great developer can take a language like Perl and create a great, readable code.

    4. Re:Perl Is Hated Because It's Difficult by bferrell · · Score: 2

      except in six months something basic will be deprecated and you'll have to re-write your code from scratch in favor of the new shiny thing... which will be deprecated in eighteen months.

    5. Re:Perl Is Hated Because It's Difficult by cascadingstylesheet · · Score: 2

      You're just people googling your way to a paycheck anyway.

      Parenthetically, what's wrong with googling your way to a paycheck?

      If you can find information, effectively apply it to a task, do it well enough to get someone to pay you for it, and inevitably learn along the way, what's wrong with that?

    6. Re:Perl Is Hated Because It's Difficult by zifn4b · · Score: 1

      Perl doesn't encourage or discourage you to write good or bad code.

      Nonsense. Any language that has a hard-to-read, terse syntax by definition is more likely to produce difficult to read code compared to a language that was designed to be expressive with readability in mind. Other languages, however, naturally encourage you to gravitate to more readable code. The difference is it's hard to write readable code in Perl, easy to write hard to read code. In other languages, like Java or C# it is easy to write readable code and harder to write unreadable code. In other words, you have to be very stupid to write bad code in those languages or try to write bad code whereas in Perl, you can be trying to write good code and still write hard to read code because of the way the language is designed.

      --
      We'll make great pets
    7. Re:Perl Is Hated Because It's Difficult by zifn4b · · Score: 1

      That doesn't matter to the end user. The end user only needs to know Python to work with it.

      Not much of a programmer then. You don't know what the difference between a library that actually does something and a library that is an API wrapper to something else is. I once was supplied a third party Win32 DLL and built a C# assembly wrapper around it using DllImport and marshaling native data types and stuff. By your logic, you would say the library I wrapped was written in C# because the end-user (I guess third party developer using the wrapper) interacted with the wrapper assembly in C#. When in fact we have no way to know what the Win32 DLL was written in C++, Delphi, etc. Thanks for not only not making a contribution to the discussion but also misleading people because you just want to be right when you're dead wrong.

      --
      We'll make great pets
    8. Re:Perl Is Hated Because It's Difficult by idontgno · · Score: 2

      Real programmers don't comment their code. If it was hard to write, it should be hard to understand and even harder to modify.

      -- A Real Programmer

      This is why Perl is hated by "developers". They aren't Real Programmers.

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    9. Re:Perl Is Hated Because It's Difficult by freeze128 · · Score: 1

      Context is important here. Not in the language, but in the article. PERL is the most hated on Stack Overflow. Stack Overflow is a website where experienced devs can help out newbies with their coding questions. The experienced devs may dislike *SUPPORTING* PERL, or reading it, or figuring out complicated problems that may be related to its packages or interpreter version. Writing in Perl is so easy, it practically codes itself.

    10. Re:Perl Is Hated Because It's Difficult by networkBoy · · Score: 1

      You're conflating the language with a library. Python can't lift heavy loads, it needs the Tensor Flow lib to do that for it.

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    11. Re:Perl Is Hated Because It's Difficult by WallyL · · Score: 1

      You're just people googling your way to a paycheck anyway.

      Parenthetically, what's wrong with googling your way to a paycheck?

      If you can find information, effectively apply it to a task, do it well enough to get someone to pay you for it, and inevitably learn along the way, what's wrong with that?

      Because if you can, somebody else can, for less than you.

    12. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 2

      For the most part Perl is being used as a wrapper for something else. It's a thin script to automate some bulk of work done *elsewhere* in the system.

      I want to know where Perl beats Python hands down in performance that doesn't include extra libraries.

      When your peers and successors only need to pick up C# to get their work done then C# is all that matters. With Perl being 'write only' that is a near impossible task. Given the choice of fixing existing Perl or re-writing it in Python (or even C# in your case) I'll always chose the latter.

      I write wrappers like that all day long. Python wrapping C# for dSpace, ETAS and CRETA. Python wrapping C for Vector CANape. Python wrapping C for Matlab/Simulink. When my peers need to use any of those tools all they need to know is Python. There's even a chance they can fix or improve it. With Perl that's mostly not an option.

    13. Re:Perl Is Hated Because It's Difficult by robkeeney · · Score: 2

      "... you have to be very stupid to write bad code in those languages..." So what you're saying is that most Java and C# programmers are very stupid? I can't disagree. Most of the Java and C# (and pascal and VB and php and...) I've ever seen was awful, violating all the principles of good software development. Most of the C, C++, and every other language I've seen was pretty bad too. Most people who write software should not.

      I keep hearing this idiotic nonsense repeated ad nauseum in the programming world by morons who think the language is the problem; that making just the right language will make all the bugs go away. It's trivially easy to write readable code in Perl, just as it's trivially easy to write unreadable, unmaintainable spaghetti in Java or C#. It has nothing to do with the syntax of the language. It has everything to do with the person writing the code.

    14. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 2

      You're conflating the language with a library.

      No, I pointed out that once you want to move beyond some simple scripts, Python has those libraries while Perl does not.

      And once you want to move beyond some simple automation scripts it has a much larger ecosystem than Perl.

      You can learn Perl AND Python + libs, or you can just learn Python. It has the benefit of having a larger ecosystem and being readable.

      If I wanted to make something that no one else would bother touching I'd write it in Perl.

    15. Re:Perl Is Hated Because It's Difficult by Instantlemming · · Score: 1

      I've seen great Python code and poor Python code.

      But at least the poor Python is still nicely formatted, right? :-P

    16. Re:Perl Is Hated Because It's Difficult by fahrbot-bot · · Score: 1

      Now it's Python. Which has the added benefit of being readable.

      Hmm... "=", "==", "==="

      Not to mention having to exactly preserve the white-space when copying any code around. It becomes much less readable if you don't - unlike other languages that don't care about white-space. /just-throwning-that-out-there

      --
      It must have been something you assimilated. . . .
    17. Re:Perl Is Hated Because It's Difficult by Cajun+Hell · · Score: 1

      what's wrong with googling your way to a paycheck?

      Because if you can, somebody else can, for less than you.

      Someone else can, but they never fucking do. They just come ask me to google for them. I have Sigourney Weaver's job from Galaxy Quest.

      --
      "Believe me!" -- Donald Trump
    18. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 2

      Not to mention having to exactly preserve the white-space when copying any code around

      The grey beards on Slashdot continually bring this up. I have this yet to be an actual problem, ever. Are you guys that inept at copy and pasting?

      If it's ever not perfect it gives a good time to scan the syntax and actually read what you're blindly copy and pasting in.

      unlike other languages that don't care about white-space.

      Yeah, Makefiles grok whitespace wonderfully.

    19. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      Such as? Python 3.3 which is the first usable of the Python 3's is 5 years old.

      All of my Python 2 code I just treat as a separate external application (Like I do Perl, C, Matlab, etc)

    20. Re:Perl Is Hated Because It's Difficult by xanthos · · Score: 1

      There is a CPAN module for that

      --
      Average Intelligence is a Scary Thing
    21. Re:Perl Is Hated Because It's Difficult by gweihir · · Score: 1

      Well, I have given code in Perl that does real work to students as example and to modify for years. I always got comments that it was very easy to read. Obviously, I am doing something wrong here....

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    22. Re:Perl Is Hated Because It's Difficult by gweihir · · Score: 1

      Yes, always the same incompetents blaming the tool. And hence staying incompetent.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    23. Re:Perl Is Hated Because It's Difficult by Etcetera · · Score: 1

      I want to know where Perl beats Python hands down in performance that doesn't include extra libraries.

      Regular expressions
      Memory allocation and de-allocation
      Data structure management (hashes)
      Language-standard sorting (in most cases)

      That's just off the top of my head.

    24. Re:Perl Is Hated Because It's Difficult by Kremmy · · Score: 1

      It's a little depressing after all these years to look back on these iconic scripting languages and realize how little progress we've made in them. They are homogeneous, syntactical sugar over the C foundation that drives everything. The same libraries across all of these micro platforms has benefits, and the thriving ecosystem we have likely depends on the level of homogeneity among them. But at the end of the day it makes them all effectively the same with minor strengths and weaknesses on handling data in particular ways.

      Could it truly be that we haven't seen progress since the procedural syntax less line numbers was added to BASIC?

    25. Re:Perl Is Hated Because It's Difficult by Etcetera · · Score: 1

      You're conflating the language with a library.

      No, I pointed out that once you want to move beyond some simple scripts, Python has those libraries while Perl does not.

      What? I have yet to find a data processing library/module/implementation that I needed that didn't have a decent perl implementation. If you need something bleeding edge, maybe, as certain things tend to get written in whatever fad language is popular at the moment. If it's realistically in use though, there's probably a perl module for it.

      And once you want to move beyond some simple automation scripts it has a much larger ecosystem than Perl.

      CPAN is twice the size of PyPI measured by discrete modules. Determination of usefulness is left as an exercise for the reader.

    26. Re:Perl Is Hated Because It's Difficult by Kremmy · · Score: 1

      It threw me back to Jack Sparrow.

      You're the worst programming language I've ever heard of!

      But you have heard of me.

    27. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      have yet to find a data processing library/module/implementation

      numpy, matplotlib, any of the neural network libraries.

      whatever fad language is popular at the moment.

      Yeah, Python that fad language from 1991.

      2000 if you're counting Python 2. 2008 for Python 3.

      Python is hitting critical mass and being used everywhere. Perl is going the way of COBOL. There will always be profit in using it and always be someone doing it. But they're not teaching Perl to middle schoolers, for good reason.

      CPAN is twice the size of PyPI measured by discrete modules. Determination of usefulness is left as an exercise for the reader.

      Where does npm fit if you want to do shear numbers? How many of those packages are still maintained?

    28. Re:Perl Is Hated Because It's Difficult by cascadingstylesheet · · Score: 1

      You're just people googling your way to a paycheck anyway.

      Parenthetically, what's wrong with googling your way to a paycheck?

      If you can find information, effectively apply it to a task, do it well enough to get someone to pay you for it, and inevitably learn along the way, what's wrong with that?

      Because if you can, somebody else can, for less than you.

      Somebody else can attend classes too. Somebody else can read books too. Somebody else can do online tutorials too. For less than you.

      Not everybody can get the same results out of doing those things though. And not everybody can get the same results out of googling. Hence, we have jobs ...

      The guy I was responding to thinks that there's something specially wrong about googling though.

    29. Re:Perl Is Hated Because It's Difficult by tender-matser · · Score: 1, Insightful

      Sure, baby.

      When presented with some nasty, convoluted problem (eg. normalize the data from badly scanned documents and identify errors), you can be a "Real Programmer" and get nothing done after months of posturing, or you can be a lazy ass and throw some stupid perl script in half an hour (including debugging) that gets everything in and allows you to concentrate on stuff that is more intellectually rewarding

      That's why Perl is so hated by the "Real Programmers" -- because it devalues their stature and trade.

      Besides, not all code has to be so much readable. I have perl scripts that I wrote 10 or 12 years ago, that I'm using daily or almost and and that I never had the need to modify, ever.

      And, besides, "readability" is overrated; I don't know how you geniuses are "reading" code, but I never read source code like a textbook or RFC; when I look at code, it's because I'm debugging it, and after trying to make sense of some maze of stupid abstractions and useless interfaces designed by some deluded manboy, one becomes completely desensitized to the syntax ugliness, just like a hooker becomes desensitized to her clients' smell.

      If anything, compact, write-only languages are better, because it's always easier to read 100 lines of badly thought out garbage instead of 10000.

    30. Re:Perl Is Hated Because It's Difficult by fahrbot-bot · · Score: 1

      I don't disagree, just saying that Python isn't the second coming many believe it to be - and the white-space thing is stupid and unnecessary. People can write well/poorly structured programs in any language. Personally, I find (most) Perl scripts - and certainly the ones I write and mentor others to write -- perfectly readable and maintainable, but I've also been using it for a very long time (like with Emacs). I don't know about the scopes of the Perl vs. Python ecosystems, but CPAN is quite extensive.

      --
      It must have been something you assimilated. . . .
    31. Re:Perl Is Hated Because It's Difficult by whoever57 · · Score: 1

      And once you want to move beyond some simple automation scripts it has a much larger ecosystem than Perl.

      Have you actually looked at what is available in CPAN?

      What are you doing in Python that is hard to do in Perl because there isn't a suitable package to support it?

      --
      The real "Libtards" are the Libertarians!
    32. Re:Perl Is Hated Because It's Difficult by Dutch+Gun · · Score: 1

      The grey beards on Slashdot continually bring this up. I have this yet to be an actual problem, ever. Are you guys that inept at copy and pasting?

      I think it's one of those theoretical arguments by people who don't like the language, and probably don't use it much. I've heard similar arguments made about how dangerous C++ operator overloading is (because apparently you could hide really insane code that way, or something). In practice, I've never run into problems from either of these issues.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    33. Re:Perl Is Hated Because It's Difficult by networkBoy · · Score: 1

      Yeah, Python that fad language from 1991.

      2000 if you're counting Python 2. 2008 for Python 3.

      and you just hit my single biggest gripe with Python!
      I have Py 2.x code that I can't use in Py 3.x *WHY*
      When Perl made the jump from 4 to 5 there was a lot of care taken in backwards compatibility with the addition of one single line to the code *possibly* being required for any given perl4 script.

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    34. Re:Perl Is Hated Because It's Difficult by efitton · · Score: 1

      "==="? I think you have the wrong language.

      I have never found anyone who had difficulty with copying code around or with code snippets. I'm not even sure how that is a theoretical problem.

    35. Re:Perl Is Hated Because It's Difficult by efitton · · Score: 1

      Some of us gray beards prefer whitespace thank you very much.

    36. Re:Perl Is Hated Because It's Difficult by Jack9 · · Score: 1

      So they can hire them, when they do. Until then, continue on. Fear of the future is not a reason to stop making money.

      --

      Often wrong but never in doubt.
      I am Jack9.
      Everyone knows me.
    37. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      How's Perl 6 going?

    38. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      What is the Perl equivalent of Jupyter notebooks? Numba?

    39. Re:Perl Is Hated Because It's Difficult by zifn4b · · Score: 1

      "... you have to be very stupid to write bad code in those languages..." So what you're saying is that most Java and C# programmers are very stupid?

      Where did I say "most Java and C# programmers are very stupid?" What I said was if you write very bad code using Java or C# it probably means you're stupid because you have to actually try to do that. It's not hard to follow some basic principles and end up with some halfway decent code in those languages. As far as whether "most" Java and C# programmers fit that definition, I made no claim about that. You shoved words in my mouth, idiot.

      --
      We'll make great pets
    40. Re:Perl Is Hated Because It's Difficult by zifn4b · · Score: 1

      C foundation that drives everything

      You think CPU's execute C code? Interesting... do you even understand what a compiler is?

      --
      We'll make great pets
    41. Re:Perl Is Hated Because It's Difficult by whoever57 · · Score: 1

      That's an application written in Python. It appears to support Perl.

      Not related to the question of what libraries/packages are missing in Perl.

      --
      The real "Libtards" are the Libertarians!
    42. Re:Perl Is Hated Because It's Difficult by brantondaveperson · · Score: 1

      The nicest thing I can say about perl is that I hate it slightly less than I hate python.

    43. Re:Perl Is Hated Because It's Difficult by scdeimos · · Score: 1

      Any language that has a hard-to-read, terse syntax by definition is more likely to produce difficult to read code compared to a language that was designed to be expressive with readability in mind.

      What exactly do you find hard to read in Perl? If you said "regular expressions" then guess what? They're just as hard to read in any modern language that uses them. So far Perl is the only regex capable language I've seen that supports the /x or /xx modifiers that allow you to spread your expression out over multiple lines so you can have inline comments for Future You.

      That said, I hardly touch Perl any more. Most of my time these days is spent in SQL, C# and TypeScript+Javascript+HTML+CSS with the ocassional smattering of Python, Java and C++.

    44. Re:Perl Is Hated Because It's Difficult by brantondaveperson · · Score: 1

      And, besides, "readability" is overrated;

      This is a bizarrely naive comment. Readability is absolutely vital in all programming languages, but perhaps you might understand that better if it were termed 'understandability' instead, even though that appears to not be an actual word. The ugliness of the syntax is only marginally relevant, the extent to which you are able to understand what the code is intended to do, so that you can modify it in the future, is what 'readability' measures - if you only look at code to debug it, you must be in the highly enviable position of never having to modify the functionality of any software you write, which is certainly unusual, to say the least, and maybe explains your otherwise inexplicable position.

    45. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      Numba is a JIT compiler for Python.

    46. Re:Perl Is Hated Because It's Difficult by Kremmy · · Score: 1

      Yes, but something tells me that you do not.

    47. Re:Perl Is Hated Because It's Difficult by Darinbob · · Score: 1

      I was surprised Delphi was in the list. I haven't used it since 95 though. At the time Visual Basic was utter and complete crap, with a terrible user interface, whereas Delphi did the same thing as Visual Basic but was very much easier to use and had a reasonable language to do it in. But maybe in the last 20 years it's gone downhill (no more Borland for one).

    48. Re:Perl Is Hated Because It's Difficult by Darinbob · · Score: 1

      This feels a bit odd. I would suspect anyone dealing with neural networks would want to write their own libraries. It's experimental still, even at this stage, so anyone working with that is likely to want some tweaks on the third party libraries.

      That said, I always felt CPAN and PyPI to be weird things. A reasonable standard library is nice, after that go an get what you need from third parties (free, paid, curated, whatever). But shoving everything into a common location and having the language automatically download an install the libraries when they're needed is strange. It leads to programmers who literally cannot do anything if the necessary function isn't in the groupthink site.

      The biggest pain with Python is that Python 1, 2, and 3 are fundamentally incompatible with each other. Even some incompatibilities within different Python 2 revisions. Stability is apparently not one of Python's design goals.

    49. Re:Perl Is Hated Because It's Difficult by Darinbob · · Score: 1

      Premature optimization is not a crime. If you know optimization will be needed up front, then why wait until the customer complains before you start optimizating the obvious stuff? When I've got a slow cpu and only 20K of RAM, I have to optimize along the way. If I'm writing crypto code, optimization is a necessary part of the design. This rule of thumb is just a guideline, it is not an absolute prohibition like so many seem to assume. People should stop treating this guideline like it was a religion.

    50. Re:Perl Is Hated Because It's Difficult by Darinbob · · Score: 1

      What's wrong with having pride in your work?

    51. Re:Perl Is Hated Because It's Difficult by whoever57 · · Score: 1

      Ah, so you mean like C::TinyCompiler?

      So, I ask again, what libraries are missing for Perl?

      Or is your aversion to Perl not fact-based?

      --
      The real "Libtards" are the Libertarians!
    52. Re:Perl Is Hated Because It's Difficult by Aighearach · · Score: 1

      Not to mention having to exactly preserve the white-space when copying any code around

      The grey beards on Slashdot continually bring this up. I have this yet to be an actual problem, ever. Are you guys that inept at copy and pasting?

      COBOL flashbacks, combined with sendmail-induced PTSD.

    53. Re:Perl Is Hated Because It's Difficult by Aighearach · · Score: 1

      It can be a legit problem with Makefiles, where horizontal tab characters have to be in the correct place, but are not generally rendered to the screen.

      Also a COBOL problem that varies with compiler.

      Not really a "problem" in modern languages, but the main arguments are around the potential utility of punctuation.

    54. Re:Perl Is Hated Because It's Difficult by whoever57 · · Score: 1

      numpy, matplotlib, any of the neural network libraries

      I suggest you read this posting

      In Perl we have these same capabilities and tools if not more:

              PDL - The Perl Data Language, which has:
                      N-dimensional array objects
                      integrated scientific computing libraries for science, mathematics engineering
                      integrated 2D plotting libraries via PGPLOT and PLplot
                      integrated 3D graphics libraries via OpenGL and TriD
                      and much more...
              Statistics::R, Statistics::useR - basic integration between Perl and R for statistical computing
              ExtUtils::XSpp and SWIG - interoperability between C++ and Perl
              Countless other libraries on CPAN for math, science, engineering (just look at Math::*, Statistics::* namespaces for example)
       

      As for neural networks, try this

      --
      The real "Libtards" are the Libertarians!
    55. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      Ctrl-F CUDA.

      I didn't see CUDA support. Were those instructions on another page?

    56. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      Also, how in god's name do you consider that easier to read and simpler than https://numba.pydata.org/?

    57. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      How about this, it's being taught.

      Colleges aren't moving their freshmen engineering programming courses from MATLAB/FORTRAN to Perl, they're moving it to Python.

      High school and middle school students doing code combat in Perl.

      It's nice that you've had your head buried in what ever you've been doing for the last 5 years but Python is here and it's here to stay big. It's the lingua franca of programming for the next decade or so. They have a higher chance of finding a tutorial on on what they're trying to do with 'How to ____ in Python".

      The only people picking up Perl like those picking up FORTRAN & COBOL, they're doing it because they want a niche in industry, not because it's actually going to become more popular. Perl was a nice stepping stone but most people don't want to deal with it.

    58. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      In my last 15+ years on Slashdot I've found that commenter fall into one of two categories.

      I think it's one of those theoretical arguments by people who don't like the language

      and

      No wireless. Less space than a nomad. Lame.

      Python is here to stay. These Perl luddites are more than happy to go into their corners of industry and die like the COBOL and FORTRAN people have. No one is ever going to touch their code because 'it works' and some unlucky schmuck will be stuck maintaining it. But for the rest of us Python is trivially easy to read and write.

      No one is teaching middle schoolers Perl. There aren't re-education and retraining syllabuses designed around Perl. There aren't dozens if not hundreds of tutorials and training around how to use Perl. The best responses most of them have in this thread are "It's in CPAN, RTFM".

    59. Re:Perl Is Hated Because It's Difficult by whoever57 · · Score: 1

      Which doesn't support your original claim that Python was dominating because Perl was lacking in libraries.

      --
      The real "Libtards" are the Libertarians!
    60. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      That's because I had to switch it up because in your world PDL is close to Numpy.

      Based on the PDL 2.007 release comments this is somehow the appropriate way to create an identity matrix with PDL:

      sub eye
      {
              push @_, $_[0] if @_ diagonal(0,1) .= 1;
              $pdl;
      }

      I can't imagine what other horrors lay beneath trying to do any sort of controls work.

    61. Re:Perl Is Hated Because It's Difficult by whoever57 · · Score: 1

      No, it isn't.

      If you had bothered to read that page properly, you would see that the test you reproduced was the result of a formatting problem, not actual code.

      --
      The real "Libtards" are the Libertarians!
    62. Re:Perl Is Hated Because It's Difficult by Dutch+Gun · · Score: 1

      In my last 15+ years on Slashdot I've found that commenter fall into one of two categories...

      Has anyone ever told you that you seem to view the world in a binary fashion?

      --
      Irony: Agile development has too much intertia to be abandoned now.
    63. Re:Perl Is Hated Because It's Difficult by 0100010001010011 · · Score: 1

      You somehow think this is better, the correction under it?

      sub eye
      {
              push @_, $_[0] if @_

              my $pdl = zeroes(@_);

              $pdl->diagonal(0,1) .= 1;

              $pdl;
      }

      The point stands that PDL is nowhere near as complete of a toolbox as numpy or MATLAB. You may be able to do some light number crunching with it but academics aren't going to be using Perl for any numerics any time soon.

    64. Re:Perl Is Hated Because It's Difficult by amorsen · · Score: 1

      In perl the JIT compiler is named perl... If you want ahead-of-time-compilation you probably want perlcc -O.

      --
      Finally! A year of moderation! Ready for 2019?
    65. Re:Perl Is Hated Because It's Difficult by gustygolf · · Score: 1

      Not to mention having to exactly preserve the white-space when copying any code around

      The grey beards on Slashdot continually bring this up. I have this yet to be an actual problem, ever. Are you guys that inept at copy and pasting?

      I don't like Python (or rather, I don't like its One True Language status), but I never use that argument against it. If I copy some code from the interwebs, it doesn't go through the clipboard. Instead, I use the keyboard and rewrite it to match my style.

      And in the case I'm copypasting code from one function to another and I need to adjust its indents, there's always vi's < and > commands.

      --
      "Slow Down Cowboy! It's been 58 minutes since you last successfully posted a comment" -- slashdot, driving users away.
    66. Re:Perl Is Hated Because It's Difficult by bmarkovic · · Score: 1

      Whereas Perl is somehow performant?

      At it's best it's negligibly faster, at it's worst it's negligibly slower. They are in the same ballpark, playing the same game, the only thing is that Python makes playing the game more fun and better experience. If you ever need that raw data crunching performance Python today has much better ecosystem of wrapped C libraries, Cython, PyPy etc. Maybe CPAN is huge but most people won't bother as everything around it is kinda arcane. And then we come to the point that, as extension of all this, many more people are adding performance tweaks to NumPy than to Math::Pari or Math::GSL.

      I mean, numbers (GitHub repos, developer users, hell even benchmarks) speak for itself so you can pretend it's not happening but it is.

    67. Re:Perl Is Hated Because It's Difficult by zifn4b · · Score: 1

      Apparently you don't. Given a C program, what is the output of say gcc. It is insufficient to say "executable". Describe what the executable is composed of and how it is "executed" by the CPU. For bonus points, explain why the output would be different on a 32-bit CPU, 64-bit CPU, Intel, Motorola or ARM processors.

      --
      We'll make great pets
    68. Re:Perl Is Hated Because It's Difficult by networkBoy · · Score: 1

      slowly, but when (if?) it lands it will still support Perl5 code... So I don't understand your point in asking about 6.

      Honestly, perl6 isn't really needed, as a result I doubt it will ever hit 1.0.

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    69. Re:Perl Is Hated Because It's Difficult by robkeeney · · Score: 1

      I certainly don't think programming language doesn't matter. Some languages are simply awful, and those languages tend to be the ones that (in the guise of making it easier to write good code) focus on preventing the programmer from writing bad code (e.g. Basic, Delphi, Java). Any language that takes capability away from the programmer because it might be misused is a bad language. You can still write 'not-bad' code in those languages, it's just not as easy to write great code.

      The fundamental thing is that it's the programmer that writes crappy code. If I write bad code, it's not the language's fault, it's mine. A language can hinder me from writing great code; it can not make me write bad code.

    70. Re:Perl Is Hated Because It's Difficult by robkeeney · · Score: 1

      Nope, I'm clean shaved.

      You can be snotty about the principles of good software development, but using them I've written thousands upon thousands of lines of code that simply work. Customers don't call to report bugs in code I wrote. QA doesn't file bugs against my code.

      The wise programmer is told about Tao and follows it. The average programmer is told about Tao and searches for it. The foolish programmer is told about Tao and laughs at it.

      If it were not for laughter, there would be no Tao.

      (http://canonical.org/~kragen/tao-of-programming.html)

    71. Re:Perl Is Hated Because It's Difficult by Kremmy · · Score: 1

      gcc is a compiler that takes C code and turns it into machine code. and it's written in C. either you don't understand my point or you don't understand what the compiler does and why it is important.

    72. Re:Perl Is Hated Because It's Difficult by Kremmy · · Score: 1

      Who writes machine code?

    73. Re:Perl Is Hated Because It's Difficult by efitton · · Score: 1

      But the parent (grandparent) wasn't talking about COBOL or Makefiles. They were talking about the "issue" of copying code around Python.

      I'm not seeing any actual arguments or examples about the utility of punctuation; but if so, lets talk about the utility of whitespace and readability.

    74. Re:Perl Is Hated Because It's Difficult by Aighearach · · Score: 1

      If you didn't comprehend it, my advice is to either read it again, or else move on.

    75. Re:Perl Is Hated Because It's Difficult by efitton · · Score: 1

      Comprehension is not the problem. You changing the goal post would be the problem.

    76. Re:Perl Is Hated Because It's Difficult by Aighearach · · Score: 1

      There isn't even a goalpost in my statement. You're the one who offered a goalpost and said my comment didn't make it through! But my comment also wasn't on your field, so why would your goalposts have relevance?

      If you offer a "correction" that doesn't correct my post, and I tell you that you didn't understand it, how would you know I'm wrong? You'd have to first understand what I said. And to do that, you'd have to understand enough about software programming to understand why COBOL and Makefiles would be relevant when discussing white space in code, and how it affects copypasta.

    77. Re:Perl Is Hated Because It's Difficult by efitton · · Score: 1

      https://slashdot.org/comments....

      Which is about copying and pasting Python with whitespace. And now you are blathering on about COBOL. That is moving the goal post. I replied to a message about whitespace AND python. You've brought in makefiles and COBOL. WTF.

    78. Re:Perl Is Hated Because It's Difficult by Aighearach · · Score: 1

      I didn't move any goal post, I was talking about COBOL from right where I brought it up. And there was no goalpost in the discussion. I know it is hard to comprehend the meaning of all the words, but fuck an A. You can't comprehend my comment, that is fine, but why are you doing it so loudly?

    79. Re:Perl Is Hated Because It's Difficult by efitton · · Score: 1

      And no one before you breathed about COBOL. What the hell does copying and pasting PYTHON have to do with the price of tea in China or COBOL.

      Shit, if I had said something about adding whitespace to COBOL (well for flow control as older versions of COBOL were certainly interested in the first 7 characters being blank) then your comment might have some relevance; but because you started a tangent that no one is interested in doesn't mean we don't understand what you are saying.

    80. Re:Perl Is Hated Because It's Difficult by Aighearach · · Score: 1

      Right. Before I made a point about COBOL, nobody else had discussed it. I brought it up. If you didn't want to talk about COBOL, it would be a strange thing to reply to.

      Your comprehension is still substantially lacking, but recognizing that I chose to speak of COBOL, and that I did so of my own free will without coercion, that is at least one small baby-step towards reading comprehension. Congratulations!

      Oh, and you're wrong that it was only the first 7 columns where whitespace mattered. You simply don't know much about COBOL, probably should just stick with not knowing much about it instead of "golly I don't know but let me tell you about it anyways."

  5. I love to hate perl but it's not that bad... by bytestorm · · Score: 4, Insightful

    The CPAN library system is mature, it has ports on a ridiculous number of platforms, and the syntax isn't even particularly awful. If anything, its curse is (anecdotally) that it's everywhere and new-to-perl developers run across old code all the time and struggle to figure out the system it backs. And the fact that perl hacks had (have?) a bad habit of becoming defacto production code.

    1. Re:I love to hate perl but it's not that bad... by Average · · Score: 1, Insightful

      Gotta concur with that one. CPAN is plain misery. The PHP community, for all its warts, has had a major revitalization in the last four years largely because they've gone from a slog of a CPAN-clone to Composer/Packagist, which learned a lot of neat tricks from other languages' package managers that have improved in the modern era. CPAN feels like it come from an era when digital watches and Anonymous CVS were pretty neat ideas.

    2. Re:I love to hate perl but it's not that bad... by pop+ebp · · Score: 1

      I'm curious, how would you deploy code in other languages that also depend on external modules/packages?

  6. Too much hate. by Anonymous Coward · · Score: 3, Insightful

    Why hate, why not dislike. I have been coding for 40 years and never came across a language I hated, just ones that weren't suited for the job. Hey, if the company is going to pay me $75 an hour to code I'll write the app in Sanskrit if they want me to.

    1. Re:Too much hate. by Wycliffe · · Score: 2

      That's it? I ask $75 for the stuff I like to do. Perl would be $200/hr minimum.

      I enjoy Perl. Of all the languages I've used, it's by far my favourite. It's probably one of the most powerful and concise languages out there. I also have no problem reading it. Even the notoriously hard to read regular expressions are easier to read than the many lines of code it would take to replace many of them. I would much rather read/write perl code than PHP or Java but probably my least favorite is writing for the web. CSS drives me batty and although Javascript is a decent language, the DOM and different browser incompatibilities is a nightmare. The solutions that people have come up with although ingenious hacks are even more insane. Things like select2 replace the standard select widget with a dizzying array of divs instead. Jquery almost completely redefines the language. Give me any language on a single platform with a single widget set and I would prefer that over the hodgepodge nightmare that is web development.

    2. Re:Too much hate. by Jason+Levine · · Score: 1

      if the company is going to pay me $75 an hour to code

      If that's a freelance rate, then I feel better about my rate. I keep thinking I'm under-charging.

      If that's a full time job hourly rate, then I'm probably being massively underpaid.

      --
      My sci-fi novel, Ghost Thief, is now available from Amazon.com.
    3. Re:Too much hate. by networkBoy · · Score: 1

      We are, apparently, a very tiny minority...
      Except that the language is still in production everywhere.

      As an aside:
      Clear Case source control system has *massive* swaths of its codebase written in Perl.

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    4. Re:Too much hate. by 0100010001010011 · · Score: 1

      I wish you success in the market with that approach.

      It's been great so far. Key is to focus in on a niche in industry and have the 'jack of most trades' approach to it.

    5. Re:Too much hate. by 0100010001010011 · · Score: 1

      Clear Case source control system has *massive* swaths of its codebase written in Perl.

      For anyone that's used ClearCase that would probably double the amount of hate going towards Perl.

    6. Re:Too much hate. by DeFKnoL · · Score: 1

      Oh thank goodness! I had found all of this hate distressing and I have many fond memories of Perl and all of the things you can do in so few lines of code. Perl is more than just a way to tell computers what to do - it is an expressive language with dialects and flexibility. And how could people hate Perl more than JavaScript? I'm not sure the conclusion of the article is all that accurate.

    7. Re:Too much hate. by networkBoy · · Score: 1

      not once they dig into it... The Perl bits are what came from Rational, and still work. ;)

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    8. Re:Too much hate. by 0100010001010011 · · Score: 1

      still work. ;)

      If you call what clear ClearCase does 'working'.

  7. Real source by Shompol · · Score: 3, Informative

    The original study is here I found the "polarization of technology" diagram at the bottom even more interesting.

  8. Javascript really sucks by Snotnose · · Score: 3, Interesting

    Over the last 40 some odd years I've programmed in dozens of languages. Some I liked, some I was ambivalent about, some I didn't like. But the only language I learned to actually hate is Javascript. Talk about a steaming pile of shit.

    1. Re:Javascript really sucks by zifn4b · · Score: 1

      Over the last 40 some odd years I've programmed in dozens of languages. Some I liked, some I was ambivalent about, some I didn't like. But the only language I learned to actually hate is Javascript. Talk about a steaming pile of shit.

      How do you feel about PHP?

      --
      We'll make great pets
    2. Re:Javascript really sucks by Entrope · · Score: 2

      Give Rust some time. Have you ever tried to drink Rust-flavored Kool Aid? It's horrible!

    3. Re:Javascript really sucks by Wycliffe · · Score: 1

      Over the last 40 some odd years I've programmed in dozens of languages. Some I liked, some I was ambivalent about, some I didn't like. But the only language I learned to actually hate is Javascript. Talk about a steaming pile of shit.

      I don't think the language Javascript is that bad. I think the biggest problem with Javascript is the stuff that is intricately linked to it like the DOM, CSS, and browser incompatibilities. I think Javascript outside of a web environment would be fairly pleasant.

    4. Re:Javascript really sucks by Anonymous Coward · · Score: 2, Insightful

      I find it really amusing that many of the people who like to hate PHP are the same people who gleefully jumped on board the Node.js bandwagon.

      JavaScript and PHP came onto the scene at a similar time, and many of the worst problems are shared between them.

      Both languages have evolved since then, and particularly in recent years, and both are now significantly more mature, robust and well-rounded languages. They both do still have serious issues, but it is possible today (even commonplace) to write good quality, well structured and maintainable code in either of them.

      There are good reasons to still dislike PHP, but hating it today is irrational. If you still hate PHP today, I challenge you to re-examine the modern PHP ecosystem and some modern PHP code and understand how the language has changed. Then justify your hatred by pointing out issues that you have with PHP that are still there. Yes, there are some, but other languages have their issues too. I honestly believe that PHP has come right now.

    5. Re:Javascript really sucks by erapert · · Score: 1

      1. When were you trying to get into Javascript? I hated Javascript at first, too.
      2. Were you treating Javascript like a functional language or were you trying to force object-oriented designs into it? I found that almost all of my pain came from attempting to implement OO designs; once I started treating it as a loosey goosey functional language it became much more pleasant to use.

    6. Re:Javascript really sucks by Average · · Score: 1

      You're quite right. PHP has done more evolution over the years than most languages (and it needed to). A modern Laravel'd-up ORM-driven annotated PHP application is completely unrecognizable as the same language as "mysql_connect in the middle of the page" PHP from 15 years ago. And a Zend/Smarty app from 8 years ago is a third kind of beastie from either of those.

      Unfortunately, people will look at the codebase of some of the most popular PHP products out there (cough cough, WordPress) and think that it's a reflection of modern PHP. It totally isn't... it's a reflection of trying to stay code-compatible for way too long. Also bad, if you don't know the difference, there are endless amounts of "PHP 2002-style" books, videos, StackOverflow posts, etc out there to trip you up.

    7. Re:Javascript really sucks by UnknownSoldier · · Score: 2, Insightful

      > But the only language I learned to actually hate is Javascript. Talk about a steaming pile of shit.

      That's because Brendan was a fucking idiot. JavaShit was designed and implemented in 10 days -- which would be impressive if he actually put some _thought_ in it. In contradistinction it was like almost every shitty thing about Basic was embraced and NOTHING about writing type safe programs from the past 40 years was used.

      * Accidentally misspell a variable? That's nice -- we will just magically use it! Undefined FTW.
      * Want misspelt variables to be flagged at run-time? Use the hack magic string

      "use strict";

      * Want to turn it off? Nope, sorry, no can do.
      * Want to include files? Bwuahaha. What do you think this is? A programming language?
      * Arrays and Strings are half-assed. What would you _think_ the result of

      "" + [1,2] + [3,4];

      should be? There are 3 possibilities:

      1. [4,6] = Vector or Matrix addition
      2. [1,2,3,4] = Array concatenation, aka [1,2].concat( [3,4] );
      3. undefined = Exception thrown for mixing types

      So what does JavaShit do? It uses an idiotic 4th choice!

      4. "1,23,4" = String Concatenation WTF!?

      More examples of how fucked up JavaShit is

      Both JavaShit (JS) and PHucked Up (PHP) languages were designed by morons. At least other languages have _some_ sanity.

      At least ES5 doesn't suck (as much).

    8. Re:Javascript really sucks by zifn4b · · Score: 1

      I find it really amusing that many of the people who like to hate PHP are the same people who gleefully jumped on board the Node.js bandwagon.

      That's why I asked the question. Javascript/NodeJS basically have the same semantics as PHP with slightly different syntax. So if you hate Javascript but like PHP, you're being irrational.

      --
      We'll make great pets
    9. Re:Javascript really sucks by AmiMoJo · · Score: 1

      The most frustrating thing is that there were already plenty of much better scripting languages that were suitable, but Eich had to go and invent his own and of course it was terrible.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    10. Re:Javascript really sucks by dan325 · · Score: 1

      Agreed. I actually like perl a lot. CPAN is amazing and, sure, there's a learning curve to read it and to write it *well*, but learning curves have never scared me if the payoff is there.

      I like perl better than javascript, that's for sure. And PHP. I haven't learned python yet, and i'm sure I will some day. The main reason that I am inclined to learn python instead of continuing to use perl has everything to do with its widespread usage (which, e.g. results in Google having official python libraries, but not perl) and nothing to do with the language itself.

      The people I really don't understand are the node.js crowd. You have to subject yourself to javascript for client-side web programming. Server-side, you can use anything. I'm convinced they're all masochists.

    11. Re:Javascript really sucks by Barandis · · Score: 1

      It's not unusual for a criticism of JS to be anachronistic.

      "use strict" is basically obsolete. Modules are assumed to be strict. Besides, why do you complain that you have to actually specify that you want variable declarations to be sane, and then complain that you can't turn it off?

      Similarly, the complaint about undeclared variables is a thing of the past.

      Including files is not a good thing, unless maybe you're doing CSS. The fact that you can do it in C doesn't make it good, and in fact you could very easily argue that the fact that you can do it in C makes C a little less good. JS has modules. Before it did, it had a way to emulate them, however painfully.

      If I saw "" + [1,2] + [3,4], my first thought would be, "why the hell would you write code like that?" No language prevents anyone coding in it from writing bad code, and openly using implicit type conversion and then complaining about how implicit type conversion is done seems slightly disingenuous. Conversion is definitely bad, perhaps the worst thing about JS (and you picked probably the tamest possible example of it), but at least you have the tools to never have to use it unless you do so on purpose.

      So all of this stuff has been in the language officially for at least 2 years. The fact that we're still stuck using ES5 is not a function of the language, it's a function of browser companies (mostly Microsoft, since we can't code to Edge until everyone starts using Windows 10+). JS has a checkered past at best, and it still suffers some of that legacy (the aforementioned implicit conversion, as well as this pseudo-class-based gobbledygook that people seem to insist on using when a perfectly simple, powerful prototype-based option is right there in front of them).

      I'm not saying it's perfect, far from it. But it's much, much better than it used to be. And it isn't PHP.

    12. Re:Javascript really sucks by Rakarra · · Score: 2

      "" + [1,2] + [3,4];

      That seems like kindof a dumb thing to write in the first place. I mean, what would the programmer have actually been trying to do? It sounds like it would involve implicit type conversion of complex structures, something that is often bad. But the result, string conversation, sounds like a natural reaction of starting with a string -- I don't think it's unreasonable to assume that everything else would be converted into string form if you start with a string. But of course, I would have hoped it would just bail with a "What are you DOING??" message.

    13. Re:Javascript really sucks by Camel+Pilot · · Score: 1

      Exactly Perl gets slammed for being ASCII character line noise and yet Javascript code frequency ends with something like:

      );
              };
      } );

      wtf

    14. Re:Javascript really sucks by Yath · · Score: 1

      Although I share your distaste for JavaScript, the string concatenation example is exactly what I'd expect. You process the operators from left to right, coercing the right-hand argument to the type of the left.

      --
      I always mod up spelling trolls.
    15. Re:Javascript really sucks by sad_ · · Score: 1

      i agree with this because i found js to be the least consistent language of all that i know.
      say what you will about perl, but the results are predictable, with js there is always some rare cornerstone case where the results are different because silly reasons.

      for example; http://i.imgur.com/6aclmM6.png

      --
      On a long enough timeline, the survival rate for everyone drops to zero.
    16. Re:Javascript really sucks by UnknownSoldier · · Score: 1

      > That seems like kindof a dumb thing to write in the first place.

      Of course it is. That's not the point. The problem is that *in practice* you can end up with situations like this unless you explicitly check every type every time.

      Gee, if only there was a way to solve this problem. Oh wait, there is! "Fail Fast" via pre-processing or compilation.

      If JavaShit had _proper_ type checking via native types: int8, int16, int32, int64, string, array, you could catch these types of problems BEFORE hand instead of FAILING at RUN-time.

    17. Re:Javascript really sucks by UnknownSoldier · · Score: 1

      > The only "problem" here is that you're adding things that shouldn't be added.

      No, that's NOT the ONLY problem.

      In a properly designed languages with types we have type checking at _compile-time_ instead of silent errors at run-time.

    18. Re:Javascript really sucks by UnknownSoldier · · Score: 1

      > It's not unusual for a criticism of JS to be anachronistic.

      Typical apologist makes typical excuse: "X isn't bad now."

      > "use strict" is basically obsolete.

      *woosh*

      Ignores ~20 years of a shitty design.

      Hello, McFly. When was ECMAScript 2015 standardized again?

  9. Re:Is that surprising? by ranton · · Score: 2

    It is surprising to me that enough developers have used Perl for it to be the most hated language. I would have guessed JavaScript, or maybe VB (#4 & #2 most hated).

    --
    -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
  10. Rust may not be the most hated language... by Anonymous Coward · · Score: 2

    ...but its fanboys are by far the most annoying.

    1. Re:Rust may not be the most hated language... by TWX · · Score: 1

      That's the way it works. The more despised something is, the more annoying those that run against the grain are by embracing it.

      The converse is not true though. As an example, Star Wars is very popular, but those who can cite everything to do with it including all of the Expanded Universe backstories for every single alien-extra that appeared in the Cantina or in Jabba the Hutt's lair are still incredibly annoying.

      It's just a TV show dammit.. It's just a TV show...

      --
      Do not look into laser with remaining eye.
    2. Re:Rust may not be the most hated language... by TWX · · Score: 1
      --
      Do not look into laser with remaining eye.
  11. Re:Is that surprising? by Anonymous Coward · · Score: 5, Funny

    Many of us who know perl (and think you're a hypersensitive snowflake of a developer) learned C before we learned Perl.

    We're immune to coding horrors.

  12. Stack Overflow by Tsolias · · Score: 1

    isn't that the place were the copy-pasta programmers and a bunch of college kids hang around, just because documentation scares them?

  13. Experience-based opinions by Sarten-X · · Score: 5, Insightful

    Having worked in Perl (and many other languages) for about 15 years now, I'm curious how many of those polled actually use Perl regularly.

    Whenever I have to introduce someone to my Perl scripts, their first reaction is usually the typical horror, which fades in a few days after they start using it. Yes, there are comments. Yes, there is decent design. No, the regular expressions are not worse than any other implementation. No, the "clever" one-liner you copied off of a PerlMonks golf challenge will not pass review.

    Sure, there are a few weird warts on the language ("bless" being the most obvious example), but it's no worse than any other, and significantly better than some of today's much more popular languages. Mostly, I find that Perl just has a bad reputation because it allows you to write ugly code, just like C allows you to corrupt data and Java allows you to consume obscene amounts of memory. The language choice does not excuse being a bad programmer.

    --
    You do not have a moral or legal right to do absolutely anything you want.
    1. Re:Experience-based opinions by geschbacher79 · · Score: 2, Insightful

      See, I think it's fair for folks (like me) who don't have deep experience in a language to dislike it. If you initially showed me an average piece of Perl script, it would make me shudder and I would struggle to work through it. Like you said, "typical horror, fades in a few days". I hate that feeling.

      Perl is also one of those languages where I'm hitting up Stack Overflow for writing every single bloody line of code, and I wonder if that's where a lot of dislike comes in.

      Also, I think it's worth pointing out that 'dislike' doens't mean 'hate'. I dislike (but don't hate) Perl, and I'm guessing some of the above data suggests the same. It would be interesting to get a poll of "Which language would you most like to expunge from the universe?"

    2. Re:Experience-based opinions by Ecuador · · Score: 4, Insightful

      Even "bless" is gone now as people use Mouse.
      Perl code can produce horrors, a bit easier than some other languages.
      But well written Perl is readable and efficient. People who hate it as a language in general, most likely have no idea what they are talking about.
      PHP with some pretty major issues as a language is quite down in the list, scoring about similar to Objective-C.... Seriously?
      Seems like a list made by bad/beginner devs, which I guess makes sense from the way it was produced...

      --
      Violence is the last refuge of the incompetent. Polar Scope Align for iOS
    3. Re:Experience-based opinions by c · · Score: 1

      Sure, there are a few weird warts on the language ("bless" being the most obvious example), but it's no worse than any other

      After 20 years of perl coding, there are still two things which truly horrify me about the language.

      Perl 5's multi-threading model is less of a wart and more of a complete shitshow. Effectively it gives you all the power of fork() with all of the convenience of fork(). 25 years ago that was (barely) okay.

      And the interface at the C level (i.e. XSUB) is just... baroque and broke.

      I had hopes for Perl 6, but I suspect I'll be retired before I need to write a single Perl 6 script...

      --
      Log in or piss off.
    4. Re:Experience-based opinions by big-giant-head · · Score: 1

      Clearly ... Alot of these folks have never written any Lisp. I would take Perl hands down over Lisp any day. Lots of Idiotic Stupid Parentheses.

      --

      So Long and Thanks for all the Fish.
    5. Re:Experience-based opinions by AmiMoJo · · Score: 1

      People having to rely on Stack Overflow just makes things worse for them, because most of the code on SO is of extremely low quality. If it actually works then the chances are it's a completely half baked implementation that will inevitably bite you in the arse later on.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    6. Re:Experience-based opinions by phantomfive · · Score: 1

      If you find someone who 'hates' Perl, ask them if they understand regular expressions. In most cases their 'hate' is actually fear of the unknown. It is their own ignorance that causes their hate.

      --
      "First they came for the slanderers and i said nothing."
    7. Re:Experience-based opinions by Dutch+Gun · · Score: 1

      That seems to be a common mantra here, but I haven't found this to be the case at all. There are certainly a wide range of quality among answers, but if you sift through them carefully (and read the comments!), you can nearly almost always find the best answer. You also need to pay attention to age, as old answers may not remain the best answers in light of new language features.

      A lot of what I use Stack Overflow for falls into two categories:
      * Common idioms for a language I'm learning, and am still unfamiliar with
      * Performing some extremely obscure tasks with some library / API

      I'm working solo a lot these days, and for me, Stack Overflow is an absolute godsend, because I don't have convenient colleagues I can turn to and ask. Sometimes the answer doesn't meet my own quality standards, but I guess that's the difference between someone who just needs a hint in the right direction versus someone who is just blindly copying and pasting answers.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    8. Re:Experience-based opinions by AmiMoJo · · Score: 1

      That's the issue - good answers usually end up buried under crap ones who just got in early. If you know what you are doing you can find the right solution, but then why are you bothering with SO?

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    9. Re:Experience-based opinions by Yath · · Score: 1

      No, the regular expressions are not worse than any other implementation.

      This is a real head-scratcher. Perl's regular expressions have been the gold standard for a long, long time, being borrowed by many other languages. How on earth did someone get the impression they were bad?

      --
      I always mod up spelling trolls.
    10. Re:Experience-based opinions by c · · Score: 1

      No reason to have had hope Perl 6 works well.

      I suppose my hope was that Perl 6 would have strong compatibility with 5 so as to make the transition as least painful as possible. I wouldn't expect compatibility at the XSUB level, obviously, but having to run gazillions of lines of old code through a compatibility layer to make it work doesn't give me warm and fuzzies. It worked for 4-5, but that was a different time.

      Perl 6 might be the best thing since sliced bread, but if I can't sanely migrate to it then it's not solving my problems...

      --
      Log in or piss off.
    11. Re:Experience-based opinions by piojo · · Score: 1

      Point of fact: for a simple pool of worker threads with a single work queue and a single result queue, the threading model is perfect. You just write everything with no need to lock. There are some difficulties, but no more than in a language like C#. For more complex computation models, I agree that perl's threads can be a non-starter.

      In a recent project which had to do 5 billion operations, I used thread queues as I've described, and the result was faster and easier than with the popular threading libraries I found on CPAN. Perhaps these libraries are more useful for other computation models?

      Sadly, I no longer work with old perl since I discovered Perl 6. Perl 6 seems to combine the best ideas of every programming language I've used. (The only thing I would wish for is even earlier static type checking, though it does check quite aggressively.) And it could be faster, but I'll take a slightly slow programming language that is fun to write (and yes, it's readable).

      --
      A cat can't teach a dog to bark.
    12. Re:Experience-based opinions by c · · Score: 1

      Point of fact: for a simple pool of worker threads with a single work queue and a single result queue, the threading model is perfect.

      Even that model falls down very quickly for non-trivial cases. For example, last I checked user a LWP::UserAgent across threads was a fail...

      I understand why it's such a mess; threading was something added as a bag on the side rather than having the interpreter designed around it. I'd just have preferred to see Perl 6 as a compatible refactoring rather than as a new-ish language.

      --
      Log in or piss off.
    13. Re:Experience-based opinions by piojo · · Score: 1

      Point of fact: for a simple pool of worker threads with a single work queue and a single result queue, the threading model is perfect.

      Even that model falls down very quickly for non-trivial cases. For example, last I checked user a LWP::UserAgent across threads was a fail...

      I understand why it's such a mess; threading was something added as a bag on the side rather than having the interpreter designed around it. I'd just have preferred to see Perl 6 as a compatible refactoring rather than as a new-ish language.

      You mean creating one UserAgent per thread doesn't cut it? Because that seems like par for the course.

      As for why threading is a mess, it's not only because it was bolted on. I suspect it's also because Perl team didn't take one big shortcut that Ruby and Python did: Perl doesn't use a global interpreter lock to prevent more than one thread from accessing just about any functions/data at the same time as another thread. I was amazed when I found out that in Python, four threads doing computations won't accomplish any more than a single thread. This seems like cheating: they aren't threads at all. No more useful than coroutines. Perhaps not taking that shortcut slowed Perl's progress. (I don't think Java or .NET have pathetic global locking either, but huge time and money went into their development. Haskell doesn't have a global interpreter lock, but Haskell was created by the type of people that do quantum physics for fun.)

      --
      A cat can't teach a dog to bark.
    14. Re:Experience-based opinions by c · · Score: 1

      You mean creating one UserAgent per thread doesn't cut it? Because that seems like par for the course.

      It's difficult to impose a "only simultaneous connections to any one server" rule if you don't have a shared connection cache/pool, for example.

      Caching is really where I find the friction with the threading model starts... caches are something which should usually be shared by threads, and perl makes that quite awkward.

      --
      Log in or piss off.
  14. Are you kidding more than Java? No way. by Seven+Spirals · · Score: 1, Informative

    Perl just looks like line noise because of the heavy use of regular expressions. Java actually sucks across multiple vectors, for example, everything is supposed to be an object. Oh yeah, except for all the built-in scalar types etc... STUPID. You also see huge amounts of boilerplate code in Java. Their garbage collection just makes the coder dumber and still eats memory (ie.. nothing reaps until it goes out of scope - which is often the source of memory being tied up just like a leak would do just via a different route). Java is also a sysadmin's most hated language because you are constantly dealing with clueless Indians and other folks on Java's level and they have no idea how to tune their app other than "Give me everything the system has." That usually includes any memory you were hoping to use for the OS caches and kernel. Finally, Java's "promise" of write once run everywhere is a total lie. It's more like write once run on the exact same version and rig as the developer and it'll work if you are really really freakin' lucky. News flash: C is actually the most portable language. You buy a devkit you can bet someone has a C compiler for that platform. A Java interpreter comes way later. C is everywhere, java is a poorly implemented pipe dream. Perl is just a utility language. If you write more than 500 lines of Perl you are probably doing it wrong.

    1. Re:Are you kidding more than Java? No way. by mrun4982 · · Score: 1

      This was my reaction. Java is by far my most hated language but it has little to do with the language itself. It's the community and how almost all Java developers think. They think Java is the answer to every single problem, even when the program is only targeted for a single platform, and they also think every problem requires dozens of layers of abstraction with names that are 10 feet long. I swear, "well written" Java programs are the hardest to read and maintain. Plus, there's the whole "write once, debug everywhere" thing.

    2. Re:Are you kidding more than Java? No way. by Seven+Spirals · · Score: 1

      I forgot about the abstraction hell, too. Java programmers are as guilty (probably more) than most OO coders. I understand the whole "let's make the solution space look like the problem space" but the level they take the abstraction to is ridiculous. It's so extreme as to become detrimental to the operational goal of the code in the first place. As messy and unreadable as Perl is, I'll take that any day over 10 levels of abstraction. You might as well just encrypt the code and be done with it. What's sad is those abstraction weenies will sit there and tell you with a straight face that they did it to *enhance* the readability. Crazy.

    3. Re:Are you kidding more than Java? No way. by Seven+Spirals · · Score: 1

      Last time I checked, India was a country, not a race. A country who constantly lobbies to get more H1B indentured servants into the USA and acts like it's some kind of right they entitled to. Java is super popular there due to offshoring. Acting like that didn't happen or isn't a simple fact is ridiculous. One look at the Hindustan times or other Indian papers gives you an instant view into what Indians think about it, too. When you let in 60,000 - 120,000 foreigners a year to take domestic jobs (and *stay* here more or less indefinitely with infinite extensions, spouse perks, etc..) so that fat cats can get cheaper costs for their megacorps, you'll forgive the natives for having a bit of angst. I never said anything against brown people, but I have *every fucking right* (and then some) to be anti-India. Fuck India. If you don't like it, you are free to go back there, pal.

    4. Re:Are you kidding more than Java? No way. by Etcetera · · Score: 1

      Perl just looks like line noise because of the heavy use of regular expressions.

      It's always hilarious to me how people hold this as a strike against Perl...

      If you need to modify/search/describe variable types of text, you're going to be using regular expressions. (Or you're going to be doing it very inefficiently, or in some super-abstracted way that will inevitably fail you when you hit a special case and need more direct control.)

      Regular expressions basically look the same in any language, and the additions perl makes onto it are useful, but don't constitute the bulk of their ugliness to someone at first glance.

      Blaming REs for perl doesn't make sense.

      Blaming variable $igils for line noise, though... that can be fair (if you're dealing with a very complex data structure). FWIW, shell scripting and other types of references occasionally are worse.

  15. Why Delphi? by dunkelfalke · · Score: 1

    I don't get the Delphi hate, to be honest. It is a pretty good language, comfortable to write. Well, the last Delphi I have used was Delphi 7, years ago, but from what I've heard it has become better rather than worse in the later versions.

    --
    "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    1. Re:Why Delphi? by bytestorm · · Score: 1

      Delphi's another language that lets you get shit done without really knowing or caring too much about what you're doing. The GUI editor is easy to use and you can basically drop in tiny code snippets without really thinking about your object model too much. Even FFI definitions are easy to do in Delphi. If I didn't have python-tkinter and ctypes, I'd probably be using Delphi or Lazarus/fpc for our in-house device testing UIs.

      The worst problems I've run into with delphi/pascal is migrating projects from old versions of the IDE to new ones and having weird bugs creep in.

      That and the guy who wrote a lot of it had a peculiar habit of misspelling variable names just slightly and using different variants for different things, but that's not a language fault.

    2. Re:Why Delphi? by hal2814 · · Score: 1

      I spent a lot of time writing Delphi code back in the early 2000's. I didn't particularly like it but I didn't hate it either. I do like some of its conventions like having an actual assignment operator. I don't like how wordy it is. It always felt like I was doing way more typing than I should be. But hate? I don't get it either.

    3. Re:Why Delphi? by dunkelfalke · · Score: 1

      I actually liked the verbosity. It was easier to read that way, almost like a human language.

      --
      "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    4. Re:Why Delphi? by Crashmarik · · Score: 2

      Using Delphi 10 now for quick and dirty control interfaces for my hardware projects. It's still beautiful. You can get what you want done quickly and lucidly and you don't need the editor translating whitespace into into mnemonics so you can see what's a block and what isn't.

    5. Re:Why Delphi? by tgrigsby · · Score: 2

      I've been using Delphi since its inception, and its predecessors going all the way back to Turbo Pascal 3.01. It's a fantastic environment, the language is easy to use, and I can get a project done in half the time it takes to put the same thing together in C#. The Delphi hate seems to mostly come from .NET programmers that bought into the M$ propaganda.

      --
      *** *** You're just jealous 'cause the voices talk to me... ***
  16. Re:pl/sql by zifn4b · · Score: 1

    They never used pl/sql for all they development like out stupid development team... including all (buzzword) web 2.0 tools.

    PL/SQL is awful compared to T-SQL. Glaring example, T-SQL table variables can be used anywhere like any other table and the performance is optimized. In PL/SQL, should I use a collection, a varray, etc. because they are conceptually the same but can only be used in certain contexts because Oracle's PL/SQL design is a Frankenstein monstrosity. Another thing that drives me nuts is MSSQL's query optimizer very rarely ever gets it wrong but you routinely have to specify optimizer hints in Oracle because their optimizer often picks a bad execution plan. And when it does that, it picks a REALLY bad one.

    --
    We'll make great pets
  17. Re:pl/sql by Entrope · · Score: 1

    Given Oracle's licensing enforcement, choosing their database is usually a major failure in your execution plan all on its own.

  18. Most Hated Language? by zifn4b · · Score: 1

    How about most irrelevant language? Why measure the level of hate towards something that is obsolete? I know let's do a study about how many people hate using looms or how many people hate commuting to work on horseback because that's useful information.

    --
    We'll make great pets
  19. Quiche eaters by Anonymous Coward · · Score: 1

    If you want to have fun then ask the developers who "love" all of these scripting languages what kind of projects they have been working on. Perl is still great for what it was designed for--text file parsing and processing. Just like FORTRAN and COBOL in their own lucrative, highly specialized, niches. Delphi was superseded by C# when Hejlsberg moved to Microsoft. And VBA is kinda left behind but still the best option if you are one of the (99%?) working people who use Microsoft Office.

  20. worse than java? Wow! by filesiteguy · · Score: 1

    Having tried to like Java since the late '90s, I can't imagine there's a language in use less intuitive or helpful.

    I'll need to check out Perl. This should be interesting.

    Last language I learned was Whitespace.

    1. Re:worse than java? Wow! by nitehawk214 · · Score: 1

      Lol, comparing java from 20 years ago to java today.

      --
      I'm a good cook. I'm a fantastic eater. - Steven Brust
    2. Re:worse than java? Wow! by filesiteguy · · Score: 1

      Um, same poor syntax with that horrid MVC convolution added in.

    3. Re:worse than java? Wow! by nitehawk214 · · Score: 1

      What MVC?

      --
      I'm a good cook. I'm a fantastic eater. - Steven Brust
  21. Ruby on Rails by kelemvor4 · · Score: 1

    Is even worse than Ruby.

  22. At least Perl stable. by Qbertino · · Score: 5, Insightful

    Perl is a wacky language and only bareable if you can handle old school unix stunts, no doubt. It gave birth to PHP, which speaks volumes. I remember reading an OReilly introduction to Perl and laughing at the wackyness. I've done the same with PHP, but I've always respected both. Sort of.
    Unlike newfangled fads and desasters like Ruby, Perl is a language that remains usable. Books on Perl from 18 years ago are still valid today, just like with awk, TCL and Emacs Lisp.

    Complain all you want about the awkwardness of old-school languages - they still work and many of them run on just about anything that can be powered by electricity. These days I'm still a little reluctant to say which side Javascript will come up on now that Node has it's very own version hodgepodge gumming up the works.

    --
    We suffer more in our imagination than in reality. - Seneca
  23. Re:Is that surprising? by computational+super · · Score: 1

    I gotta say, I'm shocked by this finding. I don't have enough experience with Perl to personally hate it or love it, but if you had given me 10 guesses which programming language would have been the absolute most hated - especially in a list that includes Visual Basic, PHP, Cobol, C#, ColdFusion, Pascal and Java - I don't think Perl would have been any of them.

    --
    Proud neuron in the Slashdot hivemind since 2002.
  24. Two types of languages . . . by walterbyrd · · Score: 4, Insightful

    Those people like, and those people use.

  25. Nothing new by simplu · · Score: 5, Interesting

    People hate what they don't understand.

    --
    L.
  26. Perl is a scripting language... by bobbied · · Score: 3, Interesting

    Personally I prefer Perl over similar scripting languages.

    I write in KSH, CSH, Python and Perl regularly... Of the three, Perl is my hands down favorite for a scripting language.

    If you are writing applications in Perl though, it sucks. The implementation of objects is obtuse, it isn't geared for User Interfaces (Perl/TK anyone?) and performance is really horrid.

    But... I cut my programming teeth on C (K&R, not ANSI) so I'm one of those old grey headed guys who go "tisk tisk" at all those new fangled, it's better because it's new things you young ones think are great.

    Now get off my lawn...

    --
    "File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
    1. Re:Perl is a scripting language... by Zontar_Thing_From_Ve · · Score: 1

      I write in KSH, CSH, Python and Perl regularly... Of the three, Perl is my hands down favorite for a scripting language.

      You should absolutely not be scripting in CSH - ever. Even the guys who wrote it said so. Do a search on "why not to write in csh" without the quote marks and read at least the first 2 matches currently coming up on Google. There are problems with this shell that are over 20 years old and they've still never been fixed. The major articles on the subject, which are really old because the problems have been around forever, have interesting examples you can try and see that the errors from 20+ years ago still exist. I'd say that one of the biggest reasons KSH even exists, if not the biggest reason, is because CSH is so bad to program in.

    2. Re:Perl is a scripting language... by bobbied · · Score: 1

      I agree with you but I don't have a choice... I didn't design this thing and had zero input because I wasn't here at the time, I'm just here to make it work.

      In the end, I program to get a paycheck and if some yahoo wants a shell script that does something, I'll give them a shell script that does what they want.

      Which pretty much outlines my approach to work. I'll program whatever you want using whatever tools you provide (or allow me to get) as long as you keep paying me fairly for it. Where I have preferences for what tools, languages and platforms get used, I have no ideological objections to what the signer of my paycheck demands I use for tools, languages or platforms.

      --
      "File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
    3. Re:Perl is a scripting language... by networkBoy · · Score: 1

      I learned ANSI C, then went back to K&R for curiosity.
      I still maintain that Perl is C for lazy programmers. Inevitably I find myself making C syntax errors that are *duh* errors after having been writing Perl scripts for a while... but that's because the overall syntax is so similar that I think they occupy overlapping parts of my brain.

      --
      whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
    4. Re:Perl is a scripting language... by bobbied · · Score: 1

      I know right?

      Want to really mess your brain up, try switching between Perl, Python, C++ and Java.... Thank the Maker for IDE's that have syntax highlighting.... I learned to code in C using vi with no debugger (symbolic or otherwise) and a Data General system that didn't flush your buffers on an exception. Debugging with printf where you don't get all your output was an exercise in frustration. It was worse than doing Fortran on punch cards. The only thing I can say is it was profitable. ;) At least for the day.

      --
      "File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
    5. Re:Perl is a scripting language... by maelkum · · Score: 1

      THIS! People, this person knows what they are talking about!

      If you use Perl as a BASH replacement for simple scripts then it is decent. There's no denying that. Kinda like an bash-o-awk-o-sed on steroids, with fancy syntax.

      But writing more involved programs in it? Hell no... And I say that after working on a Perl program for the last three years (it paid the bills, barely but it did, so... you know). Never again. The amount of manual checks I have had to insert into the code to make it behave and to catch errors is staggering.

      You can write good code in Perl, yes, but it takes a ton of effort and you have to be alert and on lookout for traps at all times - otherwise you're doomed. In my opinion, you're better off using a language that at least tries to keep mistakes manageable, with sane error handling, compile-time checks - basically, all the help you can get. Because writing software is not an easy task, and you will make mistakes.

  27. Re:Is that surprising? by dreamchaser · · Score: 3, Funny

    What you have is PTSD (Perl Traumatic Stress Disorder).

  28. Enjoyed Perl 5 by mattr · · Score: 5, Insightful

    Funny, I quite enjoyed writing in Perl 5 and the feeling was empowerment, and the community was excellent. At the time Python was quite immature. Python has grown but Perl 5 is still quite useful.

    There is also quite a difference between legacy code and code written today using modern extensions, though it seems people enjoy trashing things, instead of admitting they did not actually learn it.

  29. Re:Is that surprising? by medv4380 · · Score: 2, Funny

    My usual experience with Perl goes like this: We can't process data this year can you help us? Oh, this is a 20-year-old Perl script. Let the biopsy begin.

  30. Re:Is that surprising? by alex67500 · · Score: 1

    What's wrong with C, you insensitive clod?!

  31. More hate for VBA than COBOL? WTF? by wardrich86 · · Score: 1

    Maybe it's because I only use VBA along with Excel, but I actually really don't mind it... I can do some pretty nifty shit with it. That said, every experience I had with COBOL was fucking trash.

    1. Re:More hate for VBA than COBOL? WTF? by Chrisq · · Score: 1

      Maybe it's because I only use VBA along with Excel, but I actually really don't mind it... I can do some pretty nifty shit with it. That said, every experience I had with COBOL was fucking trash.

      Probably COBOL is less hated because less people use it. And VBA comes into the category where it is often used by non-experts; they've done everything possible with macros and find they have to dip into VBA. This will be an unpleasant experience, because they don't use it regularly and they will already be annoyed that they can't do what they want with macros.

    2. Re:More hate for VBA than COBOL? WTF? by dcooper_db9 · · Score: 1

      The negative comments I hear about VBA tend to come from people who either don't have personal experience or inherited badly built applications. VBA achieved early widespread use as an extension of Microsoft Access. Access projects were often slapped together by desktop power users who didn't understand database design and were not trained in programming. The results caused all sorts of headaches, particularly when the fundamental database structure was flawed. Additionally, the jet engine does not have the robustness of a proper relational database and is not well suited to multi-user applications. Professional programmers may use access to build a prototype but will move the database to a server before putting it into production. In reality, VBA is essentially VB6 tied into the office platform. It is a dated language but it is not inferior to other languages from it's time.

      --
      I do not block ads. I do block third party scripts.
    3. Re:More hate for VBA than COBOL? WTF? by wardrich86 · · Score: 1

      I hate absolutely everything about Access. It strikes me as an application that allows non-technical users to create a macaroni-and-glue office-based application.

    4. Re:More hate for VBA than COBOL? WTF? by wardrich86 · · Score: 1

      Fair assessment. There's nothing I hate more than having to try to clean up shitty macros created by Excel. So much unnecessary shit... it's like using Frontpage (or whatever the hell it's called now) to create a WYSIWYG website. What should only take one line of code to do suddenly takes 5+ lines.

  32. Re:Is that surprising? by Austerity+Empowers · · Score: 5, Informative

    My experience with the Perl hate is it's usually from younger people (by which I mean anyone under about 40). It violates everything some may have been taught as part of their software engineering program: it's difficult to read, maintain, and support.

    But, it exists for a reason and it's ridiculously good at that purpose. If I want to process lots of text, I do not use Python, I whip out perl. And usually it's fine, the little bits of perl here and there that glue the world together aren't usually that egregious to maintain (particularly in context of the overall mechanism it's being used to glue together, usually).

    If I'm going to write serious code, code that may formulate the basis for my corporations revenue model or may seriously improve our cost structure, I use a serious language (C/C++, usually) and spend significant amounts of time architecting it properly. The problem is that more and more people are using scripting languages for this purpose, and it's becoming socially acceptable to do so. The slippery slope being loved by children and idiots alike, one might say "I know Perl, let's use that!" and countless innocents are harmed.

  33. A thought by bigdavex · · Score: 1

    Mostly people who are choosing their language aren't going to hate it. We're more likely to hate languages from projects we inherited, because we're forced to work with it.

    --
    -Dave
  34. How is this even news? by Angst+Badger · · Score: 1

    Programmers have strong preferences about programming languages, and the popularity of languages rises and falls like the rankings of Top 40 pop tunes. Film at eleven.

    --
    Proud member of the Weirdo-American community.
  35. Perl is Cool by Anonymous Coward · · Score: 1

    Execution speed is fast, and coding is succinct. The OO (Object Oriented) stuff is a bit naff, but that was just a bolt on. OO less Perl probably even more efficient.

  36. Re:Is that surprising? by ilguido · · Score: 1

    Me too. I actually like Perl, I find its regular expression stuff quite powerful for scripting. Javascript and PHP are worse in my opinion, they have more or less the same problems as Perl, without any real strong point. However, if there is one language I hate, that is VBScript: terribly confusing, painfully slow and cumbersome for many simple tasks (like regular expressions), yet it is pushed down your throat by Excel lovers office managers.

  37. Re:Is that surprising? by The+Cynical+Critic · · Score: 1

    I worked quite a lot with C (both ANSI and C99) before I ever touched Perl, but this didn't stop my first experience dealing with it feeling like watching the lawnmower scene from Steve Jackson's Braindead* (or Dead Alive as it was called in some markets).

    I don't know about you, but whoever designed the language has either got a very deranged sense of humor or is just a flat out sadist.

    *For those not familiar with the scene: https://www.youtube.com/watch?...

    --
    "Why should I want to make anything up? Life's bad enough as it is without wanting to invent any more of it."
  38. I'm surprised that PHP by Chrisq · · Score: 3

    I'm surprised that PHP isn't more hated.

    1. Re:I'm surprised that PHP by G00F · · Score: 1

      I'm surprised that PHP isn't more hated.

      I'm sure I'm not the only one who doesn't think of PHP when talking of programming languages...

      --
      The spirit of resistance to government is so valuable on certain occasions that I wish it to be always kept alive
  39. Re:Is that surprising? by Anonymous Coward · · Score: 1

    There is no reason to hate Javascript unless you come from C++/Java "inherit everything and override everything" classes.

    Javascript simply is easier for people to program in without making arbitrary mistakes. A lot of what is hated about Javascript is the browser DOM. Not Javascript itself. Which leads me to the thing I have the most in Javascript, JQuery. Want to see how stupid JQuery people are? Ask them to do something simple without using JQuery. So many times I see a 300KB library loaded to do one thing that could be done with two lines of normal Javascript.

    VB rightfully deserves any hate thrown at it because it's functionally awful.

    Perl probably gets a lot of hate because of how much it breaks with every update. It's actually really easy to understand, and most of the syntax rules you use in Perl are the same as PHP. However where PHP shines is in not needing any third party libraries to do just about everything. Everything comes with PHP, unlike Perl which nothing comes with it, thus the oodles of different, broken, obsolete libraries to do "simple" things you probably should have just done in Perl to begin with, without the library.

  40. Re:Is that surprising? by AndroSyn · · Score: 2, Insightful

    C sucks at string handling. Thus perl.

  41. I like Perl. It's useful, flexible and powerful. by Anonymous Coward · · Score: 1

    I think perl is great. Python is the on that surprises me. Any language that derives significance from white space has serious issues (Makefile, Fortran and Python... all shitty to program.)

  42. Perl is just fine by Anonymous Coward · · Score: 2, Insightful

    I love perl. What I don't love is the deliberately obfuscated perl written by someone trying to be clever and/or indispensible by writing code only they can (quickly) understand. A quick down-and-dirty perl script is one thing, using it in reusable scripts is just immature and pointless. Especially those who refuse to document their code.

    THAT is the part I detest.

    1. Re:Perl is just fine by Obfuscant · · Score: 1

      I love perl. What I don't love is the deliberately obfuscated perl written by someone trying to be clever and/or indispensible by writing code only they can (quickly) understand.

      There used to be an annual contest called "The Obfuscated C Contest", where contenders had to perform some specified task in as unreadable way as possible. The ability to make C look like line noise on a modem was amazing. Perl is not special in allowing this kind of stuff.

  43. Re:Is that surprising? by ranton · · Score: 1

    There is no reason to hate Javascript unless you come from C++/Java "inherit everything and override everything" classes.

    I never said I hated it, just that I would have guessed it was the most hated. Although it isn't my favorite language I really like JavaScript.

    Want to see how stupid JQuery people are? Ask them to do something simple without using JQuery. So many times I see a 300KB library loaded to do one thing that could be done with two lines of normal Javascript.

    Most senior level front end developers I know nearly refuse to write boilerplate JavaScript because of browser compatibility concerns. Using a library where someone else deals with those issues is generally favorable, even if it means needing to load an 82 KB library for a single function call. The time it takes a developer to decide if those 82 KB are necessary is nearly always more valuable than a few dozen kilobyte download which gets cached.

    --
    -- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
  44. Perl has too many choices by Hydrian · · Score: 1

    My biggest problem I find with Perl is that there were SO many ways to express a similar operations, conditionals, etc. While this may be nice for single developer projects, it is utter hell if someone has to read that code. This has happened because of Perl's long life and its iterations to add more and more contemporary programming concepts. This has made it possible (and thus it will happen) to make Perl code a spaghetti mess of syntaxes. This makes perl code difficult to read much less grok.

    I'm not saying Perl is the only offender of this. PHP has the same issue with its older functional programming syntax style and its OOP syntax. But PHP has kept it mainly to two styles. Perl has way too many styles so people get lots in syntax and find it hard fallow the code.

    --
    No good deed goes unpunished.
  45. What's NOT to like about Delphi? by Anonymous Coward · · Score: 1

    It programs for ALL the major platforms out there currently pretty much (yes, Linux now again too) https://www.embarcadero.com/products/delphi/ & from what I see? Today's "programmer" @ Stack Overflow etc. are copycat noobs (yes, there's a few folks there that KNOW THEIR STUFF, but they are by FAR a minority carrying the weight of the noobz there that think "only OUR language is good" well bullshit - Python, Perl etc. don't do a FRACTION of what Delphi can on its own).

    APK

    P.S.=> I program in a dozen languages fluently - Delphi knocks the piss out of most bigtime (even C++) minus their flaws (C buffer overflow null-terminated strings for one) & stole me away from MSVC++ & VB when in a competing trade rag of all places, Visual Basic Programmer's Journal Sept/Oct 1997 issue titled "Inside the VB5 compiler" (watered down MSVC++ one) Delphi took 4/6 tests 1st place (especially math & strings where it LITERALLY DOUBLED & then some MSVC++ full, & every program does those tasks)... apk

    1. Re:What's NOT to like about Delphi? by Locke2005 · · Score: 1

      Coded in Delphi, and the main drawbacks are it is old and little used. If I remember, the biggest problems I had were moving data between managed and unmanaged code, but that's probably not the fault of the language.

      --
      I've abandoned my search for truth; now I'm just looking for some useful delusions.
  46. Re:Is that surprising? by networkBoy · · Score: 5, Informative

    I *love* perl.
    It is C for lazy programmers.
    I tend to use it for four distinct problem domains:

    * one-offs for data processing (file to file, file to stream, stream to file, stream to stream). When I'm done I don't need it any more

    * glue code for complex build processes (think a preprocessor and puppetmaster for G/CMAKE)

    * cgi scripts on websites. Taint is an amazing tool for dealing with untrusted user input. The heavy lifting may be done by a back end binary, but the perl script is what lives in the /cgi-bin dir.

    * test applications. I do QA and Perl is a godsend for writing fuzzers and mutators. Since it's loosely typed and dynamically allocates/frees memory in a quite sane manner it is able to deal with the wacky data you want fuzzers to be working with.

    --
    whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
  47. Welcome to the real world by DeplorableCodeMonkey · · Score: 1

    ava is also a sysadmin's most hated language because you are constantly dealing with clueless Indians and other folks on Java's level and they have no idea how to tune their app other than "Give me everything the system has."

    I am a Java developer working with a .NET team. They do the **exact** same thing with .NET. <old-coot-voice>And back in my day, they used C++ and shit randomly blew up because they didn't understand pointers, but at least we had control over memory!</old-coot-voice>

    But a lot of us who use Java actually do now how to write Java code that typically doesn't leak object references and can garbage collect just fine. Pay bananas, and don't be surprised when all you get are monkeys.

    Finally, Java's "promise" of write once run everywhere is a total lie. It's more like write once run on the exact same version and rig as the developer and it'll work if you are really really freakin' lucky.

    You are more full of shit than an abandoned outhouse. I could run this by every Java developer I've met in the last 10 years and they'd ask what controlled substance you're high on because most of us haven't worked on even a single project where the deployment target and the workstations matched up either in OS or JVM version. The JVM is not perfect, but Java binaries are extremely portable if you fully leverage the appropriate APIs to make resource access platform agnostic. (Most of you could be a demotivator: "Hard codes Windows file path, claims it's not cross-platform.")

    1. Re:Welcome to the real world by drinkypoo · · Score: 1

      Finally, Java's "promise" of write once run everywhere is a total lie. It's more like write once run on the exact same version and rig as the developer and it'll work if you are really really freakin' lucky.

      You are more full of shit than an abandoned outhouse. I could run this by every Java developer I've met in the last 10 years and they'd ask what controlled substance you're high on because most of us haven't worked on even a single project where the deployment target and the workstations matched up either in OS or JVM version.

      I've had plenty of good luck with small, simple apps, but literally every large Java program I've ever installed has come with its own JRE which it installs within its own directory structure and which it uses via hardcoded path. Surely this is being done for a reason.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    2. Re:Welcome to the real world by Etcetera · · Score: 1

      You are more full of shit than an abandoned outhouse. I could run this by every Java developer I've met in the last 10 years and they'd ask what controlled substance you're high on because most of us haven't worked on even a single project where the deployment target and the workstations matched up either in OS or JVM version.

      Have to disagree with this anecdote here. Having worked as a SysAdmin/OpsEng for places with heavy Java development, I've had to deal with "We must use this specific version of the JVM or our code won't work" demands from the Devs. Often this extends down to the bugfix/patch release level because of some specific oddball behavior or performance regression, which manages to make Java compatibility suck far more than perl and many other environments, even leaving aside the irony of comparing that to java's initial promises.

    3. Re:Welcome to the real world by Seven+Spirals · · Score: 1

      I am a Java developer working with a .NET team. They do the **exact** same thing with .NET. <old-coot-voice>And back in my day, they used C++ and shit randomly blew up because they didn't understand pointers, but at least we had control over memory!</old-coot-voice>

      Uhm, well, I'm an ASM & C programmer who's been doing it since before Java was invented. You are right, pretty much all the OO languages point at each other for having the worst memory management and dumbest ideas around abstraction. Far be it from me to suss out a winner to someone like you in the thick of the whole mess. However, just because it happens broadly to a certain class of coders doesn't mean we all have that problem. I'm writing programs that fit into 4k of RAM. When you reply that people do that all the time with Java we are all going to have a good long belly laugh and stare through your argument like a Ziess lens.

      But a lot of us who use Java actually do now how to write Java code that typically doesn't leak object references and can garbage collect just fine. Pay bananas, and don't be surprised when all you get are monkeys.

      I can't argue with that. Pay H1B salaries, get H1B performance. It's just funny how often the suit-weasels pick java because they think Java + H1B is their golden ticket to the country club. I bet you think that's a total mystery for some "wonderful" language like Java.

      You are more full of shit than an abandoned outhouse. I could run this by every Java developer I've met [...]

      Well ask any of the inmates at the prison if they great guys in a bad situation and they'll all say the same, I'm sure. In case it wasn't clear, I don't give a flying fuck what Java devs think. They choose Java, for fuck's sake. That already tells me all I need to know. As my original post pointed out, it's *sysadmins* who can tell you the real story about Java. That narrative is a bit different from what you and your buddies claim. Ask them how portable, resource friendly, and well packaged it is. Your little "me and my friends" bubble is going to pop. Oh and you might try another language that isn't Java or M$ crap, and you might learn why those old coots are laughing up their sleeve at you.

  48. But not as much by SuperKendall · · Score: 1

    You are going into a new company, they say they have two older systems ; one written in Perl, one in Javascript. They want you to maintain and update one...

    Which do you choose?

    The answer to that for most devs would be Javascript, I think.

    Perl itself is OK in my view, I don't mind working in it. But from experience the problem with languages like Perl is that it can more greatly deviate with how someone else might write Perl than yourself, so whenever you encounter Perl it seems even more alien and befuddling than it might otherwise.

    It's interesting that Javascript, even with all the type flexibility does not seem to run into this issue as much.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  49. I don't find that surprising by DrXym · · Score: 1
    Perl is super terse to the point of incomprehensibility and has a dozen ways to achieve any one thing. This might suit people trying to write quick and dirty scripts but it doesn't scale and it doesn't result in maintainable code.

    Once upon a time, it might have been the least painful way of writing scripts but these days we have Ruby, Python, NodeJS and a bunch of others. I'd be hard pressed to want to use Perl unless there was some material reason that every other scripting language was unsuitable.

  50. Re: Is that surprising? by Anonymous Coward · · Score: 2, Funny

    Sounds like he hit a Wall.

  51. Re:Is that surprising? by fahrbot-bot · · Score: 4, Insightful

    My experience with the Perl hate is it's usually from younger people (by which I mean anyone under about 40). It violates everything some may have been taught as part of their software engineering program: it's difficult to read, maintain, and support.

    The quality of the program structure and the ability to read, maintain and support it are due to the programmer, not Perl. People can write programs well/poorly in any language. Like some others here, I *love* Perl and always endeavor to write clear, well-organized code - like I do in any other programming language - so others can make sense of it -- you know, in case I get hit by a bus tomorrow... It's call being professional.

    Hate the programmer, not the programming language.

    --
    It must have been something you assimilated. . . .
  52. Still love Perl by Pablopelos · · Score: 2

    I'm old school, but I still love Perl (5, not 6). I have never had a problem that I had Perl getting in my way of what I was trying to do. I have never even encountered a problem that I couldn't solve with it. CPAN is its big selling point, a ton of code is already written (and mostly debugged). The problem is the language (as in a real language, written by a linguist) is so flexible, anyone can write it a myriad of ways. There is bad perl, good perl, terse perl, line noise perl, and going for broke golf perl. This is not good for corporate in general, and now that most of my generation of Perl has moved on or is getting older, good programmers are hard to find. The curve for perl was steep, but thankfully, the regular expressions, and a lot of the formatting styles are the same in a lot of other languages so all is not lost. Perl is dead, long live Perl!

  53. Re:Is that surprising? by AndroSyn · · Score: 1

    That's a feature, not a problem. Pointer arithmetic is probably both the best(and worst) feature of C.

  54. Re:Is that surprising? by fahrbot-bot · · Score: 1

    What you have is PTSD (Perl Traumatic Stress Disorder).

    Actually, Python Tab Stress Disorder. Our last programmer was taken away, still in a cold sweat, weeping about white-space, begging for a curly-brace. We're going to get him one for Christmas - a stuffed curly-brace, he's not allowed to have sharp objects on the ward.

    --
    It must have been something you assimilated. . . .
  55. Re:Is that surprising? by Jack9 · · Score: 1

    > remember PHP initially stood for "Perl Hypertext Preprocessor".
    > Took everything about Perl that was good and shot it, leaving only the bad bits behind.

    Historically, it did the opposite. The youth tend to be disparaging about successful efforts they can't replicate.

    --

    Often wrong but never in doubt.
    I am Jack9.
    Everyone knows me.
  56. Re:Is that surprising? by Cajun+Hell · · Score: 1

    It sounds like you're not merely trying to write some program in two lines, but taking on the big job of interfacing with a web browser , i.e. one of the strangely most-complicated, shitty-APIed software that exists in our world. I think that's what AC meant by "A lot of what is hated about Javascript is the browser DOM."

    (That said, I think Javascript is kind of "eww" because I like classes and Javascript is weird.)

    --
    "Believe me!" -- Donald Trump
  57. Re:Is that surprising? by plopez · · Score: 1

    You just described why I hate front end development. I got caught up in the Browser Wars of the late 90's and I said "never again". And I have been able to do so for years.

    --
    putting the 'B' in LGBTQ+
  58. Re:Is that surprising? by TheRaven64 · · Score: 4, Informative

    There is no reason to hate Javascript unless you come from C++/Java "inherit everything and override everything" classes.

    Sure there is. If you come from a Smalltalk or Self background, the lack of sane support for numbers is a good reason to hate JavaScript. Smalltalk had a rich set of integer and floating point types, and the default integer kind was automatically promoted to a BigInt object on overflow. In contrast, JavaScript has only one numeric type, a double-precision floating point value. Trying to efficiently represent a 64-bit integer in JavaScript is basically impossible, trying to support arbitrary-precision integers is horrible pain. Lisp and Smalltalk had these from the start.

    Then there's the lack of portable support for sane forwarding until very recently. In Smalltalk, if you call a method that doesn't exist, then the invocation is wrapped in an object and passed to the doesNotUnderstand: method. This lets you do proxy things transparently and easily. In JavaScript, this used to be impossible.

    Then there's the not-quite-pure-OO nature. Everything is an object, but some of the operations can't be modified and some objects (e.g. Number) can't be subclassed / used as a prototype. Or the fact that you have a single immutable prototype chain. Or the fact that the operators aren't methods (so can't be overloaded) but are weirdly defined for arbitrary types (what is object + object?). Or the weird type coercion that happens, so adding an integer to a string is well defined and has odd results, so 'foo' + 1 + 1 is 'foo11', but 1 + 1 + 'foo' is '2foo' (where, in a sane language, both of these would throw exceptions).

    --
    I am TheRaven on Soylent News
  59. Re:Is that surprising? by plopez · · Score: 1

    Some of those are obscure to the current generation of developers. The ones who frequently end up on StackOverflow trying to get someone to do their homework for them, or worse lied there way into a job bragging about their mad 1337 {Java|C#|Perl|JavaScript|JSNode|Ruby| } sk!11z. Hence the fact that these polls, they are not surveys, are bogus. And why the hate list is tilted against older non-trendy languages that are still functional depending on the problem domain.

    --
    putting the 'B' in LGBTQ+
  60. Re:Is that surprising? by gweihir · · Score: 1

    It could be argued that C does not really have string handling. Hence what would suck at string handling is the coder, i.e. you.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  61. Re:Is that surprising? by plopez · · Score: 1

    so C# is out as a second career. (sorry I couldn't resist :)

    --
    putting the 'B' in LGBTQ+
  62. Not even close.. by lipponen.antti · · Score: 1

    If you think Perl is the worst from all of the programming languages, you probably don't recognize its true strengths (and weaknesses) in many of todays computing environments. Compared to bunch of proprietary languages in variety of enterprise legacy environments, Perl would be amazing tool to script and automate all kind of functions and repeating functions compared to the native scripting environments.

  63. Perl is the most hated language by barbariccow · · Score: 1

    Perl is the most hated language by people who have never heard of ruby. Fixed the title for you. You're welcome, Slashdot.

  64. And on the other hand, bash is well liked... by gweihir · · Score: 1

    Something about these results smells funny.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  65. Re:Is that surprising? by barbariccow · · Score: 1

    It originally stood for "Personal Home Page" -- as it was written for a guy's personal home page.

  66. Re:Is that surprising? by Entropius · · Score: 2

    This is basically it.

    I use C for things that have to go fast.

    I use perl for things that have to deal with text.

  67. Do they hate Perl or something else? by opentunings · · Score: 2

    I write a lot of Perl, and almost all of it has regexes throughout (monitoring Oracle logs, data mining, etc.) The last time I heard, Perl and Java had the most comprehensive implementation of the Regular Expression engine of all languages. It's well known for its data munging abilities. So I wonder if it's Perl that people hate, or the regexes that Perl is supporting?

    https://www.regular-expression...

  68. Re:Is that surprising? by al0ha · · Score: 4, Insightful

    Yep - Perl is C for lazy programmers - well maybe not lazy, but programmers that don't want to have to deal with allocating and freeing memory, which is the bane of C and where many of the security problems arise. The other beautiful thing about Perl is no matter how you write your code, the interpreter compiles it into the most efficient form, just like C.

    I think hate for Perl stems from the scripters who try to show off their Perl skills, writing the most concise code which is exasperatingly confusing and serves absolutely no purpose. Whether you write verbose code which takes many lines to do the same thing as concise and hard to understand code, at run time they perform exactly the same.

    Perl coders have only themselves to blame for the hate; thousands of lines of stupid hard to read code is a nightmare for the person that comes along months or years later and has to work on your code. Stop it damn it, stop it!!!!!

    --
    Did you ever wake up in the morning, with a Zombie Woof behind your eyes? -- FZ
  69. Whiners always complain by WillAffleckUW · · Score: 1

    You all want your hands held when coding.

    I used to code assembler on 2 byte registers, and I liked it.

    Now go take your punchcards before I throw them on the floor in disgust.

    --
    -- Tigger warning: This post may contain tiggers! --
  70. Re:Is that surprising? by AndroSyn · · Score: 1

    It could be argued that C does not really have string handling. Hence what would suck at string handling is the coder, i.e. you.

    Oh I don't disagree with you at all here. I will say that C's "string handling" is probably one of the most common sources of vulnerabilities in C programs.

    With that said, C is still my favorite language. Even if my feet have long ago been blown off and I've managed to hang myself with the excessive amount of rope it gives me.

  71. Re:Is that surprising? by Kiaser+Zohsay · · Score: 2

    A coworker once said to me "Perl code looks a lot like C code, doesn't it?"

    To which I replied "Perl code can look like C code, but it doesn't have to. *My* Perl code looks like C code. Perl code can look like line noise."

    --
    I am not your blowing wind, I am the lightning.
  72. "and projects associated with Microsoft" by spongman · · Score: 1

    "and projects associated with Microsoft"

    what does that even mean?

    why not just say "Visual Basic" instead, or "Projects associated with Linux" (for Perl)?

    The journalistic hackery at the register is as unapologetic as usual.

  73. Re:Is that surprising? by Hal_Porter · · Score: 1

    I always thought Perl was an abomination. Mind you I once got roped into writing some test code in Perl. And it was surprisingly OK. The code was structured into a bunch of functions and it was like writing C. Well except Perl at that point had no function prototypes so you had to manually make sure when you called something you passed things in the right order.

    Another Perlism that I disliked was what happens when you pass two arrays and some scalars into a function they all get scrunched into one big list. So you need to pass by reference explicitly

    http://www.perlmonks.org/?node...

    But you know what? Apart form that it wasn't too bad. These days I mostly use Python for scripting, but Perl is honestly not a bad language.

    I think it's like VBScript. VBScript is terrible language but the last time I used that I was mostly building up a bunch of strings to pass into MS-SQL. Similarly the last time I used Perl it was actually generating C code which was then compiled and run. And a Perl script checked the logs to see which tests had passed. Basically the system was a way to automate testing code on a bunch of embedded platforms and some emulated ones to make sure nothing broke. Perl was actually OK for that.

    --
    echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
  74. Re:Is that surprising? by phantomfive · · Score: 4, Insightful

    Show me a person who hates Perl, and I'll show you a person who doesn't grok regex.

    --
    "First they came for the slanderers and i said nothing."
  75. Re:Is that surprising? by UnknownSoldier · · Score: 1

    > It could be argued that C does not really have string handling.

    Really??

    /*
      strcpy()
      strcmp()
      strcat()
      strlen()
      etc.
    */
    #include <string.h>

    While's C's string processing leave a lot to desire, the basics ARE there.

  76. Re:Is that surprising? by 93+Escort+Wagon · · Score: 1

    My experience with the Perl hate is it's usually from younger people (by which I mean anyone under about 40).

    I suspect much of the perl hate is from people who haven't actually learned perl but at some point in time were asked to update or troubleshoot a perl script.

    There are languages which a "non-speaker" can often get the gist of and troubleshoot existing code to some degree. Perl is not one of them. Then again, those easy-to-read languages seem to give novice coders a false sense of adequacy - which may be the reason we see so many security exploits in code using them. When was the last time you saw a perl exploit?

    --
    #DeleteChrome
  77. PHP is better at text processing by Anonymous Coward · · Score: 1

    If I want to process lots of text, I do not use Python or Perl, I whip out PHP.

    PHP is as good a command-line language as it is a web server language and whatever you can write in Perl or Python, I can write in half the time in PHP. PHP arrays are superior in every way for data processing because, under the hood, they combine the power of a hash and a doubly-linked list that allows both integer and string keys in the same array while maintaining fast access + item insertion order for near O(1) operations. No other scripting language comes close.

    PHP devs tend to produce readable code - far more readable than what Perl devs produce.

    I whip out C++ *without* STL (i.e. no std::'s for me TYVM) when I need sheer performance or direct access to rare OS-level functionality. However, you can also write extensions for PHP in C to handle the heavy performance-sensitive bits and expose the new functionality to userland.

    1. Re:PHP is better at text processing by brantondaveperson · · Score: 1

      I whip out C++ *without* STL

      That must be because you enjoy writing linked lists. Seriously, stl is the most powerful part of C++, why you'd completely avoid it is totally beyond me.

  78. Re:Is that surprising? by Darinbob · · Score: 1

    Perl is a crossover language, it's used in so many different contexts. JavaScript is essentially only web development, VB is Windows only, etc. Those are niche languages.

    But Perl is portable to many different systems, can be used for web server back ends, can be used for data analysis, textual manipulation, a quick mock-up language, command line scripting, sysadmin scripting, build systems, full applications, etc.

  79. Re:Is that surprising? by Mike+Van+Pelt · · Score: 2

    Show me a person who hates Perl, and I'll show you a person who doesn't grok regex.

    That's probably a good part of it. Me, I love regex, and I like perl a lot.

    When I'm writing a perl program, I do *not* use the fiendish tricks that I use when trying to win a round of "perl golf". Clear code with comments.

  80. Re:Is that surprising? by Sarusa · · Score: 1

    Perl is great to write - you can just bang out some shit fast and it probably works. It's certainly better than using bash or sed for the same problem space.

    The hell comes if you ever have to look at what you crapped out ever again. Six months later and it's unintelligible. Or worse, you have to use what someone else crapped out.

    Yes, you can write really good, really clean, really maintainable perl if you want to put in some effort - I've seen it twice in my entire career.

  81. Re:Is that surprising? by Darinbob · · Score: 1

    I really wish Smalltalk had become more popular. As it is, Ruby comes closest to being a textual version of Smalltalk as a language, even if it's not Smalltalk as a system. So many people point to one language or the other as the one true way to handle multiple inheritance, but I like that Smalltalk just refuses to do it, thus problem solved. Yet at the same time it is perfectly capable to add any of the various kinds of multiple inheritance into Smalltalk if you were so twistedly inclined to do so. There is nothing else out there that's I could call a "pure" OO language or system than Smalltalk or Self.

  82. Re:Is that surprising? by silvergeek · · Score: 2

    I got *a lot* of productivity out of perl when it was popular. It's true that a programmer can write horribly obscure perl code. But, a good, clean, considerate programmer who comments well can write very maintainable and understandable code. Also perl itself, in spite of its complexity under the hood, is amazingly bug-free.

  83. Re:Is that surprising? by mea2214 · · Score: 1

    Nothing wrong with C or perl as long as you use vi instead of emacs to edit it.

  84. Perl is not for wimps by aod7br7932 · · Score: 1

    Its the best text processing language, period.

    1. Re:Perl is not for wimps by Locke2005 · · Score: 1

      Agreed, since everything is a string, it's good for quick hacks of HTML. Not sure what else it's good for.

      --
      I've abandoned my search for truth; now I'm just looking for some useful delusions.
  85. Re:Is that surprising? by phantomfive · · Score: 1

    Indeed. A regex is almost always more clear than corresponding procedural code that doesn't use a regex.

    --
    "First they came for the slanderers and i said nothing."
  86. Re:Is that surprising? by Obfuscant · · Score: 1

    I got *a lot* of productivity out of perl when it was popular.

    The productivity of a programmer doesn't depend on how popular the programming language he uses is, it depends on his skill and the suitability of the language to the task.

    Don't let a website that thinks you can determine the popularity of a programming language from the number of up-and-down votes on stories related to it change your estimation of your productivity with it. Flamebait written about perl here would get down-mods; that doesn't change the value of perl itself.

  87. Isn't for stupid people by hazard · · Score: 2

    Perl simply throws your incompetence straight in your face, while other languages will not hurt your ego so much.

    Yes guys & gals, complex constructs will take time to grasp. In return, Perl allows to write good & compact code and professionals will understand it much quicker compared to other languages, simply due to a smaller amount of code they have to read.

    1. Re:Isn't for stupid people by maelkum · · Score: 1

      While I somewhat agree that Perl does not try to be easy, I think it does not make it a good language, even for "professionals". What Perl does is hide your errors and turn them into traps. I just cannot comprehend why someone would want that? And to prove I don't come to a discussion with empty hands:

      - no control over function parameter types
      - automatic flattening of arrays
      - no distinction between numbers and strings
      - no distinction between hashes and arrays
      - turning undefs into defined values when used as references (who in hell thought *this* would be a good idea?)
      - modules are not first class values,
      - no error when you mess up and use '==' instead of 'eq'
      - no straightforward way of setting up a function with default parameters
      - no officially sanctioned threading model (and no, 'use threads;' just doesn't cut it)
      - no scoped lifetimes (in the spirit of Python's 'with' or RAII in C++)

      I spent the last three years writing and maintaining Perl codebase of a few 10KLOCs. It was a nightmare. I solved most of my gripes with Perl, and was almost satisfied with the solutions I found. But the bad taste remains. In my opinion Perl has too many deficiencies to be considered a good language in 2017. There are better choices now (again, in my opinion).

  88. Can't say I disagree by Locke2005 · · Score: 1

    The usual remark I make about Perl is that valid Perl code is indistinguishable from modem noise. But then, I also say that Python is like somebody combined C++ and Perl. In Perl, everything is a string, whereas in Python, everything is an object -- even integers. This makes for a very inefficient language.

    --
    I've abandoned my search for truth; now I'm just looking for some useful delusions.
  89. Re:All languages suck-only do what we say, not wha by Locke2005 · · Score: 1

    Sadly, C# is actually a good language, once you understand it, it looks like Microsoft took all the common mistakes that programmers make using C++ and tried to design a language where all those mistakes were impossible. So, if you got idiot programmers, you're better off having them write C# and managed code. The down side, of course, is that locks you into the Microsoft ecosystem. Too bad Mono never got anywhere.

    --
    I've abandoned my search for truth; now I'm just looking for some useful delusions.
  90. Re:Is that surprising? by networkBoy · · Score: 2

    Well, the second one is just the writer pointing out they're using the implicit operators (usually you don't need to spell out @_ or $_), eg:
    $foo = shift;
    is equivalent to
    $foo = shift @_;
    and
    foreach @someAry{print;}
    is equivalent to
    foreach @someAry{print $_;}
    is equivalent to
    foreach $foo @someAry{print $foo;}

    now, in *most* code it is rude to the people that come after you and who may not have a deep grasp of Perl's oddities to use all the implicit stuff, so you spell it out with $_ and such. In something really buried that last foreach loop will be slower because it has to do an assignment, while the first two will be faster. This only counts when you're looking at *massive* loop counts, at which point... why are you using a scripting language again?
    Lack of comments, and shit code is on the coder, not the language. I can write unmaintainable C/C++ just as easily as I can Perl, easier even, because I can have some seriously hidden interactions that I rely on but that you have *no* way of knowing interact (like mallocing the same memory block to two different structs and using them as a conversion pipe).

    As to the TIMTOWTDI issue, that's helpful and hurtful, and a lot is because of how the language is assembled I think.

    --
    whois gawk date unzip strip find touch finger mount join nice man top fsck grep eject more yes exit umount sleep dump
  91. Re:I like Perl. It's useful, flexible and powerful by Locke2005 · · Score: 1

    Yes, indentation being significant is annoying as hell, but I just edit in SciTE and constantly run the syntax checker which flags any indentation mistakes, which usually occur when doing cut/paste edits. I also found I get C++ and Python confused, e.g. writing "break;" in Python. Then I grepped through the existing code, and found out the previous author did it a lot more than I did! (For the record, a semicolon is also a statement separator in Python, so it does no harm. The difference is in C++ only the semicolon is a statement separator, whereas in Python both newline and semicolon are statement separators. Having coded C for over 30 years, I have a bias towards the C/C++ way of doing things.)

    --
    I've abandoned my search for truth; now I'm just looking for some useful delusions.
  92. Re:Is that surprising? by WhoBeDaPlaya · · Score: 1

    I'm well under 40 and don't get the Perl hate. Use it everyday in physical design flow developement/QA and implementation.

  93. Perl had it coming by Dasher42 · · Score: 1

    Perl violates basic aspects of scope. I once pulled in a fellow programmer's library for a few functions which I added to my loop. It totally broke the whole thing. Why? Because a next statement in a called function affected the loop control in the calling function. That simply shows that lack of scope is broken at the language level - and that's inexcusable.

    Perl makes sloppy quick scripts hard, but it makes doing the right thing in any larger project with a maintenance cycle hard. Globals are easy. Restricted scope and managed exposure between modules is hard. That's exactly the opposite of what it should be.

    It is far easier to write in Python and turn to the appropriate PyPy, Cython, or however you want to wrap Rust or C++ into it where you need to.

    I'll take engineering around clear design over a language designed by linguists than by programmers anyday!

  94. Alternatively... by computational+super · · Score: 1

    Alternate explanation - they say that R, Rust, Typescript and Kotlin are the fastest growing tags on StackOverflow, therefore they must be the most liked. It seems to me that a more likely explanation is that they're newer and more confusing, and more people have questions about them. The traffic for questions about, say, Perl, is starting to taper off because it's been around so long that all of the obvious questions have already been asked and answered, and a lot of the bugs have been worked out of the recent versions.

    --
    Proud neuron in the Slashdot hivemind since 2002.
  95. Re:People don't hate R yet because they haven't us by computational+super · · Score: 1

    Yeah I sort of suspect that the "least hated" list just correlates with the "least known".

    --
    Proud neuron in the Slashdot hivemind since 2002.
  96. Re:Is that surprising? by Aighearach · · Score: 1

    I was in college taking first year Computer Science classes in C/C++ when I found my first Perl book, it was just warm fuzzies flowing off the pages compared to the crap we were subjected to in class!

  97. Re: Is that surprising? by corychristison · · Score: 2

    Perl was my first scripting language, and quickly moved to PHP as it's easier for web based development. This was in the late 90's. Now I've moved on to bigger, better languages, but there is a special place in my heart for Perl.

    I love Perl because everyone hates it. Perl is now like 1/10th of my income, as I maintain some legacy applications for a few companies that I didn't build. They don't mind when I charge $100/hr (yes I'm aware I could probably charge more) to make changes or tweaks, because other developers just throw their hands up in the air and claim they need new software, which would cost a lot more. I understand there will come a day they will decide they need new software, but if they are happy with the service I provide, I will be the first place they come to get a quote to replace it.

    In fact, a couple Perl projects have moved to new systems, some developed by me, and some off the shelf applications. Remember, best tool for the job and all that jazz.

    Again, I love Perl. There are thousands of systems utilizing it, and the more people that hate it and refuse to use it means more money for me. :-)

    Did I mention I'm not even 30 years old?

  98. Re:Is that surprising? by Aighearach · · Score: 2

    This is why I switched from Perl to Ruby.

    My old Perl code looked like line noise. To me, after 6 months. Oh, I could clean it up, but it took me a lot of effort.

    My Ruby code looks a lot like C; which is nice because half my methods are also implemented in C. And I can easily read it, even years later.

    There is so much overlap between the use cases of Perl and Ruby it just didn't make sense to me to keep using Perl since I suck at making it maintainable; it is just so expressive, it is too easy to let the needs of the use case bleed into the code organization. It feels too elegant while doing that sort of thing; it can feel stifling to refuse to use that power when it is at your fingertips.

    If most of my code was one-liners I'd have stuck with Perl.

  99. Re:Is that surprising? by Aighearach · · Score: 1

    That's funny, and probably true; those of us who don't use Perl but use a lot of regular expressions are unlikely to feel the hate.

    That said, even though I used to use Perl on a daily basis since I don't use it frequently anymore I'm more likely to reach for sed than perl on the command line if I need to edit a file with a regex.

    Actually, even when I used Perl a lot I would often still use sed to make small source changes across the whole project.

    A few times in my life I've been asked to debug PHP. 100% of the time it was a regex bug and I never had to learn any PHP. :)

    Probably over 90% of the SQL bugs I get are regex-related, too.

    Perhaps the generalized rule is, "People who hate Perl should stay inside their wheelhouse."

  100. Re:Is that surprising? by Aighearach · · Score: 1

    Be warned, that was true about Javascript when you learned it, but it stopped being true about 10 years ago and now they're using it everywhere. Sad but true!

  101. Re:Is that surprising? by phantomfive · · Score: 1

    That's funny, and probably true; those of us who don't use Perl but use a lot of regular expressions are unlikely to feel the hate.

    It seems intuitively true, but the hypothesis was developed entirely empirically: at one point I realized that everyone I know who dislikes Perl also doesn't understand regular expressions. Since then, I've continued asking people when the topic comes up. So far I haven't found an exception.

    --
    "First they came for the slanderers and i said nothing."
  102. Re:Is that surprising? by Aighearach · · Score: 1

    I don't mind figuring out somebody else's old Perl script; I expect any code NIH to suck as bad as the rest of the NIH code!

    What really torques my twizzle about Perl is looking at my own old code, and realizing, "I spent a whole day making this code this ugly, and I was really happy with how perfectly the semantics matched the use case and how clear everything was. I just want to hide under a rock."

    I know it is possible to write clear Perl. I've even seen such code. But high level languages are supposed to be easier, and for me it is easier to write clear C than clear Perl. And Ruby, no problem.

    Figuring out what old code does? Not that hard. Tolerating looking at it? Harder.

  103. Re:Is that surprising? by brantondaveperson · · Score: 1

    Javascript is an extremely underrated, and generally really great language.

    Perl is an abomination.

  104. Re:Is that surprising? by Rakarra · · Score: 1

    Most of those other languages tend to either enforce some form of readability or you have to have been trying hard to make it unreadable. The problem is that half of perl's core features encourage you to write code that is difficult or impossible to maintain, and code maintenance is one of the most important phases of actually coding.

  105. Re:Is that surprising? by brantondaveperson · · Score: 1

    But, a good, clean, considerate programmer who comments well can write very maintainable and understandable code.

    This is true of almost any programming language. The issue is the extent to which the language makes this more or less difficult to do. Perl pretty much makes it as hard as it's possible to make it.

  106. It just goes to show... by doom · · Score: 1

    It just goes to show, some people don't know what they're talking about, but they do know what to say.

  107. Re: Perl by Camel+Pilot · · Score: 1

    Same here... I have a lot of Perl stuff running under cgi-bin (some of it over 20 years old) and have never ever had it break because of a system update. I had one long term running script break when a bit was flipped on the drive though.

  108. Re:Is that surprising? by Camel+Pilot · · Score: 1

    Back in the day I had evolved a string handling library for my c programming. Then when someone showed my Perl I realized that: Hey here is much better string handling library and it is available wherever I go.

  109. Re:Is that surprising? by eneville · · Score: 1

    What really torques my twizzle about Perl is looking at my own old code, and realizing, "I spent a whole day making this code this ugly, and I was really happy with how perfectly the semantics matched the use case and how clear everything was. I just want to hide under a rock."

    Why do people think this is unique to perl? I get this with whatever I do. It's time we all realise that what we do in the moment gave us joy and warm fuzzies. Now that moment has past and we've grown more intelligent and new and different problems have come along, we have forgotten all the difficulties that we had at the time that led to the brilliant piece of work we produced.

    Perl/FCGI has been good to me, applications are easy to manage and strace. I don't see that python is any better, but has a smaller library, so no need to move to that for little return. If anything, the regex is more work (no $1..9 or =~ m||; etc).

    I get as frustrated looking at my Java code as I do my perl or C. When I wrote it though, it fixed the world.

  110. Re: Is that surprising? by oobayly · · Score: 1

    I have to say, it's quite cathartic to hear so many people voice identical experiences with revisited their own Perl code!

  111. Re:Is that surprising? by eneville · · Score: 1

    Nothing? Really?

    text++ advances the pointer, so the output is 'ello World'.

    Note:

    #include

    void main() {
                    char *text = "Hello World";
                    printf( "%p\n", text );
                    text++;
                    printf("%s\n", text);
                    printf( "%p\n", text );
    }

    0x55c97e4047d4
    ello World
    0x55c97e4047d5

  112. There are things I like about perl by plazman30 · · Score: 1

    I like all variable having a $. Makes them easy to spot when looking at someone else's code. The lines ending in semi-colons is a little annoying. As much as I think Python is cool, if I see one more damn indentation error when I execute a script, I am going to scream. I'm not a programmer. Just a guy that writes scripts to get my job done. And the top of my list is vbscript. I would rather script in anything other than vbscript.

  113. Re:pl/sql by Aighearach · · Score: 1

    I use PL/pgSQL and it is great! But PL/Ruby is better.

    I'm not actually sure what you said though.

    I was stuck using the Microsoft variant one time and it was hell, it was like programming a donkey... every other line telling it GO GO GO GO GO and its like, do these fuckers realize that every other company has SQL scripting that just keeps going? Like, automatically, from one line of code, on to the next line of code?

  114. Re:Is that surprising? by Aighearach · · Score: 1

    Why do people think this is unique to perl? I get this with whatever I do.

    That's the point, for many of us we don't get that feeling using other languages.

  115. Re:Is that surprising? by Waccoon · · Score: 1

    Hate the programmer, not the programming language.

    Applies to all things except Javascript.

    Well, okay, a bad programmer can make Javascript worse, but still...

  116. Re:Is that surprising? by eneville · · Score: 1

    Why do people think this is unique to perl? I get this with whatever I do.

    That's the point, for many of us we don't get that feeling using other languages.

    To me, I think people are using it as an excuse to blame their former, less experienced-self and use shiny new things as an excuse to redo bad work. A good craftsman does not blame his tools. Perl as a language is particularly good at text processing. Sanitizing network input (web forms, etc) is very trivial, and few keystrokes. Applying a regex to string inputs in PHP/Python/... is less simple. There's also 'taint' mode to enforce and weeds out a layer of injection.

    Perhaps some people have forgotten things like MAGIC_QUOTES and other nasties that made PHP a joke language.

  117. Re:Is that surprising? by Aighearach · · Score: 1

    No, when a good craftsman buys a new tool and it is better than the old one, he says, "gosh, this new tool is better than the old one." He doesn't go all macho-moron and insist, "meh, tools are all the same, no difference."

    Actually, the master craftsman is almost certainly a master in tools, and probably has tool preferences.

  118. Re:Is that surprising? by alex67500 · · Score: 1

    Now I see what you did there. We're talking programming languages here. Text editor is whatever rocks your boat. I disagree with you, but that's not the point.

    (Except the use of gdb is so much easier (IMHO) in Emacs, but that's only because I spend a bit of time setting it up the first time I log into a new environment)

  119. Sometimes the best tool, sometimes the only one... by Mordaximus · · Score: 1

    I usually hate PERL, always have. The "many ways to do something" is its biggest strength and worst weakness. However, I admit sometimes it's the best tool for the job. The problem is some sys admins see it as the answer any question, when a bash script would have been just as good. But if you're crunching massive logs or even need to think about a regex, PERL can't be beat.

    That said, In my line of work, the tools you have are what's on the system. No CPAN, no EPEL... nothing. PERL in a base install is typically far more useable for most tasks, without including anything at all. Python is usually anaemic, ruby is no where to be seen, and no gcc to be found. So PERL is usually the only option for complex tasks.

  120. PL/SQL is the worst by urusan · · Score: 1

    PL/SQL is the worst real language (which is to say, a language I would consider actually implementing something in if everything lined up right). It's deeply married to Oracle. It only runs on Oracle databases, which in addition to the obvious lock-in potential also means you have to keep your PL/SQL up to date on a per-database level and you have to share resources with your other applications and scripts. The language itself is based on Ada, which lacks many modern features that even languages such as Java have. The only positive thing I can say about it is that it's easy to break into writing SQL at any time, though unfortunately the performance of this is miserable because it effectively calls the SQL engine like any other app would (it does admittedly have the advantage of not having to make a network call if your database is hosted separately, but it doesn't really buy you as much as you might think in most situations). Even crazier, if you can potentially get multiple rows back, it will by default fetch 1 row at a time (though it kinda makes sense due to the shared resources thing, since memory would be pretty limited on one box running many PL/SQL scripts and queries), which leads to a massive context switching overhead if you don't know exactly what you're doing.

  121. well why don't they try scratch ? or by KingBenny · · Score: 1

    use a vice emulator and simon's basic to draw neat litttle circles ... its not even a programming language its scripting, no? how about using what feels right instead of wasting time hacking on shit you can't hack

    --
    Free speech was meant to be free for all... how can anyone grow up in a nanny state ?
  122. Re:Is that surprising? by budgenator · · Score: 1

    The funny thing about language fanboys is that they always act like every single post about their beloved (usually terrible) language is 100% serious.

    I'm offended that Lisp wasn't even on the survey.

    --
    Apocalypse Cancelled, Sorry, No Ticket Refunds
  123. not the first time... by edwyr · · Score: 1

    I'm in the minority, I like PERL.

  124. Perl is hated.... by Stubbyfingers · · Score: 1

    Only by those who use it.

  125. Re: Is that surprising? by 93+Escort+Wagon · · Score: 1

    I still use perl quite a bit, as have my co-workers past and present. So... I see perl written by other people all the time.

    --
    #DeleteChrome
  126. So it's the best. by Anonymous Coward · · Score: 1

    Reminds me of Unix. There's even a unix haters manual out there. Yet it's clearly the best OS out there. So the same logic goes here. Perl is very powerful. Probably just about everyone out there has used it, just like Unix. Everyone thinks there is something better out there, though they keep using Perl to get stuff done. For data processing, it's really hard to beat.

  127. Re:Is that surprising? by eneville · · Score: 1

    A poor craftsman won't accept that it could be his skills.

    Seems there's a lot of tool blaming going on here.

  128. Re:Is that surprising? by eneville · · Score: 1

    No, when a good craftsman buys a new tool and it is better than the old one, he says, "gosh, this new tool is better than the old one." He doesn't go all macho-moron and insist, "meh, tools are all the same, no difference."

    Actually, the master craftsman is almost certainly a master in tools, and probably has tool preferences.

    Unfortunately a lot of the modern tools are cheap imports. Vintage tools have longevity and have stood the test of time. Reaching for a cheaply constructed piece of plastic crap will probably break and leave you blind.

  129. Re:I like Perl. It's useful, flexible and powerful by budgenator · · Score: 1

    It's all good once you get your drum card set up properly, then just punch away!

    --
    Apocalypse Cancelled, Sorry, No Ticket Refunds
  130. Re:Waaa! Perl!!! by budgenator · · Score: 1

    use(English);
    not that hard.

    --
    Apocalypse Cancelled, Sorry, No Ticket Refunds
  131. Re:Hated because of the Perl community by piojo · · Score: 1

    Have you looked at the stackoverflow questions on perl? Most don't even dignify a response.

    But I've found the community to actually be very nice. I've been in the #perl6 IRC channel a ton lately, and the people are all extremely nice. Asking Perl 6 question on stackoverflow always gets nice responses.

    If went to a C# forum and just asked someone to code something for me (with a list of specs), the response would be just as dismissive.

    --
    A cat can't teach a dog to bark.
  132. Re:Perl6 by piojo · · Score: 1

    It is so much more than that. The type system is extremely powerful and useful for implicit error checking. For example, I just defined a "Team" type to be a nonempty list of integers where each integer is a valid team member. So any time the application gets array data from the network that's supposed to describe a team, it's automatically error checked without needing to be deserialized to a custom class (or god forbid, calling "assert(is-team(team))" each time). I wrote the rule that the array must conform to, so creating/changing it in a way that it no longer follows the rule is an error.

    The same power goes into parameter parsing for function overloading. You're not limited to overloading based on classes and number of arguments. You can overload based on the characteristics/values of the arguments, so a recursive base case could be called based on a trait of the argument. It should cut down on errors, because you know you'll never forget the check that calls the base case since it's automatic once defined as a function overload.

    Perl 6 is a very big language, and I haven't mentioned things like its parsing library, which might be its killer feature if you need to write parsers.

    --
    A cat can't teach a dog to bark.
  133. Two kinds of Perl by holophrastic · · Score: 1

    There have always been two kinds of perl. There's perl that you've written, and there's perl that someone else has written.

    Perl that you've written is probably the greatest programming language to have ever lived. It looks like you, it feels like you, it smells like you. It's super-easy to follow because it follows your brain perfectly. That's its power -- it shapes itself to your way of thinking. The syntax changes shape, the logic changes shape, it becomes a perfect fit.

    Perl that someone else has written is likely the absolute worst programming language that will ever exist. Not only is it as cryptic as that someone-else's brain, but reading it dedicates at least 50% of your brain to nothing but the words: "why'd he write it this way, I'd have written it the other way" for every line of code, every time, always.

    The article shows a very simple block of perl code, and, as discussed, each and every single line is not the way that I'd write it. I've been programming in perl for 20 years. It's been my livelihood for 18 years. It's ultimately paid for everything I own.

    It's very rare that I get to deal with other people's perl code. Not that other people's php code is fun to deal with either, and certainly other people's C++ code can be equally brutal, but at least in those cases, I have my full brain to help me read their code. Alas, as discussed, when I'm reading other people's perl code, I only get half of my brain, while the other half just sits there complaining.

    Perl's awesome, when it's your own. Maybe it's like an attack-dog that way. Yours is an asset, someone else's is a threat.

  134. I liked perl by No+Longer+an+AC · · Score: 1

    I know I'm late to the party here, but I used perl extensively for maybe a year. It was the best choice for one particular task I had to do and that's also how I learned it.

    I could have written the same tool in C but that would have been kind of silly and I could have written a horrible shell script but that would have been horrible.

    I was parsing a lot of strings as best as I can recall and perl seemed to be good at that Use the right tool for the job.

    --

    To be honest and fair I had written things like that in C before. I really wanted to write this tool in Perl because I had never used it before and I wanted to learn it. Perl was well suited for that particular task though. OTOH, since then I've forgotten most of the Perl I learned but I still know C.

  135. Re:Is that surprising? by K.+S.+Kyosuke · · Score: 1

    And don't forget the lack of sane scoping, which you'll hate if you come from a Scheme/Lisp background instead.

    --
    Ezekiel 23:20
  136. Re:Is that surprising? by Sarusa · · Score: 1

    I don't get this in python. Recently, when a website changed its API slightly, I went back to some three year old python I wrote, and it was instantly obvious what was going on and I was able to modify it, test it, and check the code back into git in under a half hour.

    Yes, I do get this with C++, which like perl is not designed to be read.

  137. Re:Is that surprising? by TheRaven64 · · Score: 1

    That's also true if you come from a Smalltalk background. The only globals in Smalltalk are the class names in the class table. Object state is all private, and both methods and closures have their own scopes for locals. I'd forgotten how bad it was in JavaScript until you reminded me.

    --
    I am TheRaven on Soylent News