Slashdot Mirror


New Video Peeks 'Inside the Head' of Perl Creator Larry Wall (infoq.com)

"I was trained more as a linguist than a computer scientist," says Perl creator Larry Wall, "and some people would say it shows." An anonymous reader describes Wall's new video interview up on InfoQ: "With a natural language, you learn it as you go," Wall says. "You're not expected to know the whole language at once. It's okay to have dialects... Natural languages evolve over time, and they don't have arbitrary limits. They naturally cover multiple paradigms. There are external influences on style... It has fractal dimensionality to it. Easy things should be easy, hard things should be possible. And, you know, if you get really good at it, you can even speak CompSci."

Wall also touched on the long delay for the release of Perl 6. "In the year 2000, we said 'Maybe it's time to break backward compatibility, just once. Maybe we can afford to do that, get off the worse-is-worse cycle, crank the thing once for a worse-is-better cycle." The development team received a whopping 361 suggestions -- and was also influenced by Paul Graham's essay on the 100-year language. "We put a lot of these ideas together and thought really hard, and came up with a whole bunch of principles in the last 15 years." Among the pithy principles: "Give the user enough rope to shoot themselves in the foot, but hide the rope in the corner," and "Encapsulate cleverness, then reuse the heck out of it.."

But Wall emphasized the flexibility and multi-paradigm nature that they finally implemented in Perl 6. "The thing we really came up with was... There really is no one true language. Not even Perl 6, because Perl 6 itself is a braid of sublanguages -- slangs for short -- and they interact with each other, and you can modify each part of the braid..."

Wall even demoed a sigil-less style, and argued that Perl 6 was everything from "expressive" and "optimizable" to "gradually-typed" and "concurrency aware," while supporting multiple virtual machines. He also notes that Perl 6 borrows powerful features from other languages, including Haskell (lazy evaluation) Smalltalk (traits), Go (promises and channels), and C# (functional reactive programming).

And towards the end of the interview Wall remembers how the original release of Perl was considered by some as a violation of the Unix philosophy of doing one thing and doing it well. "I was already on my rebellious slide into changing the world at that point."

52 of 106 comments (clear)

  1. Acid test by Anonymous Coward · · Score: 1

    When is the Slashcode port to^H^H^H^H^H^H rewrite in Perl 6 going live?

    1. Re:Acid test by markana · · Score: 1

      It's not done until warp is ported to it...

  2. You don't want a natural language by lucaiaco · · Score: 2, Insightful

    While it may be useful for a programming language to somehow resemble the syntax of a natural language, you want to stay far away from pretty much everything else.

    Having dialects, semantic ambiguity, or whatever a 'phonology' of a programming language could be is bad, because a programming language is created to speak to a computer/compiler, not to a human. The two computational system have very different requirements. It's the same reason you don't want to use humanoid robots in a warfare scenario. Yes, they are cool, but a tank does the job much better.

    1. Re:You don't want a natural language by epine · · Score: 1, Insightful

      Having dialects, semantic ambiguity, or whatever a 'phonology' of a programming language could be is bad, because a programming language is created to speak to a computer/compiler, not to a human.

      You're probably not as aware of the ambiguities of the C language at the machine level as you ought to be.

      Logic is underappreciated and overvalued. Few programmers are really good at logic (the underappreciated part), and it isn't the whole story, either (the overvalued part). I assure you, Larry understands that permissible ambiguities in programming languages are orders of magnitude smaller than for human language.

      To quote Moneyball: it's a metaphor.

      I'll be happy if Perl 6 is someday redeemed as an important, if eccentric, stepping stone on the path forward. At my age, though, I'm less optimistic about still being alive to see this happen.

      And I'm not even that old.

    2. Re:You don't want a natural language by hord · · Score: 2

      $you->can(not have('clear')) && read ABLE, $source, ~~ q[code]
          unless $you->include('natural')('language');

    3. Re:You don't want a natural language by Aighearach · · Score: 5, Insightful

      a programming language is created to speak to a computer/compiler, not to a human.

      Hogwash. The conversation is between the programmer and the programmers who wrote the next layer down, repeated a few times, until those programmers eventually have a conversation with the circuit designer or engineer, who speaks a few different languages used by engineers, eventually speaking to engineers who designed machines that build circuits. And it keeps going down, and it is all humans talking, all the way down, until you get to apes grunting.

    4. Re:You don't want a natural language by K.+S.+Kyosuke · · Score: 1

      You're probably not as aware of the ambiguities of the C language at the machine level as you ought to be.

      Seems like an assumption is made here somehow that C is the pinnacle of language design, or somehow relevant to the problem in another way. How is the current state of C, or any particular language, relevant to the topic of what formal languages should strive for?

      --
      Ezekiel 23:20
    5. Re:You don't want a natural language by K.+S.+Kyosuke · · Score: 2

      The old proverb by the great Sussman that "programs must be wrien for people to read, and only incidentally for machines to execute" always applies. But it probably doesn't help when the two humans conversating understand the language differently from the computer.

      --
      Ezekiel 23:20
    6. Re:You don't want a natural language by Aighearach · · Score: 1

      Sorry, you didn't quite catch it.

      The computer is an inanimate object. When the computer "reads" your code, it is actually the engineer who designed the computer that you're talking to. So no, the humans and the computer don't have a different understanding; the human on one side is simply more knowledgeable about the machine than the human on the other side, who is rightly more focused on the use case.

    7. Re:You don't want a natural language by K.+S.+Kyosuke · · Score: 1

      Sorry for the metonymy. Having said that, even the "human on one side" clearly doesn't always say what he means to say in the design language in question, otherwise there's be no hardware or foundational software bugs ever.

      --
      Ezekiel 23:20
  3. Re:How's that Perl 6 going? by Anonymous Coward · · Score: 2, Informative

    Ignored? LOL! Python 3 is thriving! One of the most elegant languages, it really is a joy to use. Perl, on the other hand, is on par with brainfuck. And that's why it's dying.

  4. I actually remember those early Unix days. by hey! · · Score: 5, Insightful

    The idea that Perl doesn't do one thing well just goes to show people haven't changed; they latch onto a catch phrase then go running around seeing who they can whack with it, apparently proving to themselves how clever they are.

    PERL's wheelhouse from back in the day was right there in the name: practical extraction and report language. People who actually did that stuff for a living had no difficulty grasping PERL's significance: it made your job easier.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    1. Re:I actually remember those early Unix days. by Anonymous Coward · · Score: 2, Insightful

      Wall himself characterized Perl as starting out as "awk on steroids" and that's still it's best use case. Trying to write shell scripts that invoke pipelines with awk, sed, and cut can be extremely tedious, especially on Windows with its file paths like "c:\\Program Files (x86)\\..". Perl to the rescue.

    2. Re:I actually remember those early Unix days. by CrashNBrn · · Score: 1

      To each their own, but I always preferred awk|gawk for "practical extraction and reports."

    3. Re:I actually remember those early Unix days. by hey! · · Score: 3, Informative

      Up to a point, sure. For what in relational terms would be selection, projection, and aggregation of delimited input, awk works great. PERL slots in where you'd start thinking about writing a C program instead.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    4. Re:I actually remember those early Unix days. by arth1 · · Score: 2

      One of the seriously underutilized areas of perl is the r, reports. The format/write concept really makes life easier when it's reports you have to generate. But it's a completely different concept from how it's done in other languages, Even those who use perl regularly seem to forget about it, and use it as if it was just a more convenient awk. Which has no useful capabilities for reporting except an END clause.

    5. Re:I actually remember those early Unix days. by phantomfive · · Score: 2

      Still is the best language for that. I wish other languages wold take some of Perl's good ideas instead of focusing on functional nonsense (not saying that all functional programming is nonsense, but a lot of what people want is not particularly helpful).

      --
      "First they came for the slanderers and i said nothing."
    6. Re:I actually remember those early Unix days. by Hognoxious · · Score: 1

      I would learn awk, but I know it'll lead to me hitting myself in the face going "Why oh why did you do that with sed?!?!".

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    7. Re:I actually remember those early Unix days. by q_e_t · · Score: 1
      Functional programming would seem to be an ideal paradigm for report generation.

      report=create_report(thing_into_other_thing(fuse(data1,data2))

    8. Re:I actually remember those early Unix days. by phantomfive · · Score: 1

      I think you are right as far as that goes. The primary difficulty is easily outputting it in a way that the formatting is pretty and pleasing to the eye. Perl has some good utilities for that.

      --
      "First they came for the slanderers and i said nothing."
  5. What a mess! by Gravis+Zero · · Score: 5, Funny

    Why would you use anything besides Malbolge?
    Seriously, just look how straightforward things are in Malbolge!
    (I feel silly having to explain this but) this is obviously a "Hello World!" example.

    (=<`#9]~6ZY32Vx/4Rs+0No-&Jk)"Fh}|Bcy?`=*z]Kw%oG4UUS0/@-ejc(:'8dc

    This is a mess of a "Hello World!" example in Perl 6.

    print "Hello World!"

    Talk about a write only language!

    Seriously, the future has always been Malbolge. Why are people bothering with any version of Perl?

    --
    Anons need not reply. Questions end with a question mark.
  6. Re:I looked by slickwillie · · Score: 1

    I would have thought it was full of spaghetti and meatballs.

  7. The problem with breaking backward compatibility by 93+Escort+Wagon · · Score: 4, Informative

    When you choose to remove backward compatibility, those of us who've been using perl for a while basically will (or at least should) evaluate our need for a new language from scratch. And, compared to other languages (e.g. python, php) perl 6 has several strikes against it - two big ones being the lack of an installed base and the relatively small number of fellow coders.

    People who haven't already used perl in the past will likely not be inclined to try perl 6; and not everyone who's written perl to this point will choose to pick perl 6 as their "new" language going forward. Speaking only for myself, I've got a fair bit of existing perl 5 code, which will be maintained or upgraded as perl 5... and going forward I'll probably pick something other than perl 6 for new work.

    --
    #DeleteChrome
  8. Want to try it one day by Anonymous Coward · · Score: 2, Interesting

    Been meaning to give Perl 6 a try for years but never got around to it.

    I use Perl as a utility language to automate small tasks and get things done quickly. Yet would never write real software in Perl. Not because the language is somehow defective or incapable of handling it. It's because what makes Perl most useful to me would be disastrous when applied to non-trivial software and when I stop and do it right Perl's convenience no longer outweighs use of other languages.

    Sat in on one of Larrys talks years ago and quite frankly most of what he had to say whooshed right over my head. I'm afraid Perl 6 may be sufficiently clever and advanced that when I finally do seriously get into it..it will prove to be too much/not worth it or simply beyond my capability to understand. I do really appreciate some of the features.. promises and the ability to modify language itself (NQP). A lot of why I like Perl has to do with the ability to quickly use it to run my crappy configuration languages.

    My own view of the future of programming is general solutions are fools errands no matter how clever you are. The only meaningful progress short of AGI will come from implementation and integration of domain specific languages.

    If I want to write music I use music language. If I want to manipulate graphics I use graphics languages. If I want to do statistics I use a stats language. If I want to organize or manipulate information I use a data language. If I want to write a wire protocol I use protocol language. It's the making glue as seamless and easy as possible... allowing users to create their own domain specific language to better address specific issues... that will mark real progress in terms of language design.

  9. Re:How's that Perl 6 going? by Aighearach · · Score: 2

    You don't understand what Perl 6 is.

    Perl 4 was very popular.

    Perl 5 was Larry Wall's rewrite of Perl 4, and was widely seen as a huge improvement and a mature language.

    Perl 6 was the community's rewrite of Perl 5.

    That the horse committee didn't improve the design should be no surprise, and it certainly shouldn't reflect on Larry Wall. People really wanted a lot of those features, but more people don't want it to get that complicated and won't use it. Personally, I switched to Ruby.

  10. Re:The problem with breaking backward compatibilit by Aighearach · · Score: 1

    I remember a Larry Wall interview from 98 or 99 that was streamed on realmedia. I never found a transcript or archive but in it he said that if you want to do everything using Object Oriented Programming then Ruby is a better language than Perl. Of course, he also studies Japanese, and there weren't English language books or documentation yet. So a few years later when the books had come out I switched.

    It turned out the best thing about the change for me wasn't the language differences, but the improvements in C integration. Then Ruby is just a C API. Totally seamless. Glue anything easily.

  11. Re:How's that Perl 6 going? by fahrbot-bot · · Score: 1

    You don't understand what Perl 6 is.

    Perl 4 was very popular.

    Perl 5 was Larry Wall's rewrite of Perl 4, and was widely seen as a huge improvement and a mature language.

    Perl 6 was the community's rewrite of Perl 5.

    That the horse committee didn't improve the design should be no surprise, and it certainly shouldn't reflect on Larry Wall. People really wanted a lot of those features, but more people don't want it to get that complicated and won't use it. Personally, I switched to Ruby.

    In short: Perl 5 is, simply, good enough.

    --
    It must have been something you assimilated. . . .
  12. Use as intended by Pikoro · · Score: 4, Interesting

    The problem I've always seen with PERL is that nobody seems to use it as it was intended. If you have to take massive amounts of data (usually text), extract information from it, manipulate it, and then output it into a meaningful result, the PERL does this. It is VERY good at this. it's when people start tacking on shell scripts, a tcl/tk ui, and using it as the base for a program that doesn't do those things, that we run into problems.

    I once worked for a telecom in Japan and one of my jobs was to take billing data from a couple hundred subsidiaries, normalize the data, dump it into a formatted table, calculate usage and totals, then output a properly formatted paper bill. (this was in the early 90s) PERL was the obvious and best choice for this back then.

    The data we got was in various formats from CSV to excel sheets, to plain text files with various fields defined (or not). PERL also has an excellent template system for outputting data to fixed width columns and doing output formatting.

    --
    "Freedom in the USA is not the ability to do what you want. It is the ability to stop others from doing what THEY want"
  13. Re:The problem with breaking backward compatibilit by phantomfive · · Score: 1

    At this point, basically all the good features from Python3 have been backported to Python2, so there's no real motivation to upgrade anymore.

    --
    "First they came for the slanderers and i said nothing."
  14. Re: How's that Perl 6 going? by Hognoxious · · Score: 1

    Perl might look like a drunken cat ran across your keyboard, but at least it's visible.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  15. Re: How's that Perl 6 going? by LightningBolt! · · Score: 2, Insightful

    Uh, no. I've been coding for about 35 years. I'll take Python any day over the mess that is Perl. There's no comparison.

    --
    Old people fall. Young people spring. Rich people summer and winter.
  16. Waht? by Anonymous Coward · · Score: 1

    How do you shoot yourself in the foot with enough rope?

    1. Re: Waht? by Zero__Kelvin · · Score: 1

      The same way you look seriously at PERL and say: "That looks like a language I should really invest my time learning!"

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
  17. Re: The problem with breaking backward compatibili by Hal_Porter · · Score: 3, Interesting

    Blasphemy!

    C is the pinnacle of human intellectual achievement and Perl is heresy!

    --
    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;
  18. Re: How's that Perl 6 going? by K.+S.+Kyosuke · · Score: 1

    Python used to be simple and elegant, but I over the past two decades, I found it increasingly baroque both when it comes to the means of expressing things and the documentation describing it. (About Java, I have very few good things to say that are related to the language, the best perhaps that it isn't nearly as bad as C++.)

    --
    Ezekiel 23:20
  19. Misconception by mattr · · Score: 4, Interesting

    Now I know why people want to rename Perl 6. That trend even had made me a bit uncomfortable, though the latest candidate "P6" sounds better to me.

    Perl 6 is a totally different language and yet almost all the posts here are by people who rail against Perl 5.

    Perl 6 is already released and it works. It is an incredibly exciting and eminently useful tool that is aimed squarely at the 21st Century. The code is very readable, and probably much more concise than whatever you are using. It is written in Perl 6. It has the best Unicode and regular expressions in the world, full object model, and chained processing, while also mixing in functional and reactive programming styles, plus keywords that make it easy to compose parallel processing for both calculations and UI. It provides exact mathematical results with rational numbers. You can extend the language with your own symbols, and it feels more awesome the more you study it. For example just this past month I learned about how the compiler actually optimizes your code by simulating it before running it. There is a lot more room for it to grow, but it is already awe-inspiring. Not scary awe, but damn! I gotta get me some of that! excitement.

    The community is also very helpful and welcoming. At this point, if you are looking for a tool powerful enough to realize your visions or just to mess around with, I would recommend reading more about it. I'm hooked and am convinced it is the best tool for prototyping mine.

     

    1. Re:Misconception by iggymanz · · Score: 1

      forget perl 6, almost no one is using it. Larry had his chance and blew it by doing a 4 year project in 17 years.

      perl 6 is going into the tar pit of history

    2. Re:Misconception by konradish · · Score: 1

      The first link I clicked on in Best of Rosettacode Perl 6 examples was https://examples.perl6.org/cat...
      You can create your own grammars in Perl 6! Many times I have wanted to implement a DSL for my programs, but the barrier to entry is so high with learning YACC and LEX. I think it's worth taking a look at for this alone, and that was just the first thing I clicked on. If it weren't for your comment I don't think I would have taken the time to check it out. Thanks!

    3. Re:Misconception by redlemming · · Score: 1

      You can create your own grammars in Perl 6! Many times I have wanted to implement a DSL for my programs, but the barrier to entry is so high with learning YACC and LEX. I think it's worth taking a look at for this alone, and that was just the first thing I clicked on. If it weren't for your comment I don't think I would have taken the time to check it out. Thanks!

      There hasn't been much reason to learn YACC and LEX for a long time.

      ANTLR is a much better choice. It's a lot simpler than YACC and LEX while still being extremely powerful.

      If you understood the basics of how ANTLR works, then you can build your own parser for simple languages pretty easily. ANTLR can generate code in a number of major languages, but not Perl (though you could certainly come up with a way to run it from Perl if you really wanted to use it from Perl for some reason - the output of a parser is just a tree, and you can certainly represent a tree as text).

      Some of the advanced features of ANTLR are complex and will take some time and practice to understand - but most folks won't need these.

      If you're looking for more resources on parsing, Ronald Mak's book is an excellent introduction to the general topic of parsing (and interpreting) computer languages - far more readable than most, with an emphasis on how to do it rather than on abstract theory - certainly a better first book in the subject than the ones that usually get selected for courses.

      It's not that math is bad, but too much too soon is bad for those that learn by doing, which is most of us - a point a lot of professors have trouble grasping.

  20. Awk and reports by DrYak · · Score: 2

    and use it as if it was just a more convenient awk. Which has no useful capabilities for reporting except an END clause.

    Actually, like many other languages (including shell, including Perl, including PHP and even including Python where they are first-class citizens), AWK has support for C-style formating (printf, etc.) and thus allow some form of formatting.

    Of course it's not as beautifully integrate into the core language as perlform, and isn't visually clear (As in "%-10s" vs "@") and neither as versatile (you're going to abuse a lot of function calls and passing variables and hashes around to achieve a poor man's replacement of declaring formats).
    But still it has some limited formating capabilities.

    On the other hand, in the modern days (where terminal is seldom the final output of a program, and instead JSON message sent to some Javascript WebApp is increasingly the norm), this kind of formatting is becoming less useful.

    (Just like PHP's ability to interweave static blocks (e.g.: of HTML) with dynamic code isn't making much sense with modern nearly entirely dynamically generated websites).

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
    1. Re:Awk and reports by 93+Escort+Wagon · · Score: 1

      Yeah, my end users generally want the option to pull everything into an Excel spreadsheet or to view it on a web page. So nowadays I end up relying on various modules far more often than I use perl's own built-in formatting capabilities.

      --
      #DeleteChrome
  21. AWK SED GREP... by ze_foster · · Score: 2

    I was using SVR and BSD unixes from '88 forward. Just about everyone used awk(1), sed(1), and grep(1) to get non-dataplane work done. Perl came along in the early 90's so the propeller heads who brought us awk(1) improved awk's regular expression handler and you could accomplish everything with awk/sed/grep that perl could do. So few of my coworkers switched to perl: it was yet another "flavor of the month" scripting language that you could easily avoid. Oh: and perl wasn't distributed in money-making unixes of the time, and Linux hadn't initially even come out yet, so using perl meant you had to install it and manage it on every server in the farm across many unix flavors. Talk about de-motivation.

    I admit it: I am a developer, I worked in C in 1988, and I work in C today. Back in 1993 when perl first darkened my e-mail inbox, the guy in charge of administering ClearCase wrote a ton of perl scripts to make ClearCase do whatever trickery we needed. I've never quite understood why he snorted the kool-aid and went with perl, but I'm guessing he was bored... with ClearCase administration... and perl gave him something to poke a sharp stick at.

    Fast forward to 2017. I'm still an engineer and my hands are dirty with C code. More than 50 languages have come and gone since the late 80's, but I still butter my bread with C, and for trivial scripting or shell work, I still use awk/sed/grep, and now python. Python is exceptional, but I don't want to go into that: I'm talking about perl.

    I completely skipped perl, and I am glad: any time I have to debug someone else's perl code usually its because it broke in some mysterious way because the author wasn't much of an engineer to begin with, doesn't work here anymore, or was stubbornly holding onto perl because they put so much effort into learning it and tries to avoid responsibility for the old ratty perl code they wrote. The perl developer often hates python with a religious passion, and that's a little weird. And the perl developer doesn't like to use comments in their code, or adds snarky/4-letter-word comments, or leaves dead comments around like little land-mines that distract the next poor sot who has to debug it.

    So as far as perl goes, I'm not a fan: perl has brought me more time-wasting bugs than any other language I have done code-clerk mopping up operations for. So please go away, perl, so I can get some work done. I'm too old to waste the time.

    1. Re:AWK SED GREP... by Anonymous Coward · · Score: 1

      I was using SVR and BSD unixes from '88 forward. Just about everyone used awk(1), sed(1), and grep(1) to get non-dataplane work done. Perl came along in the early 90's so the propeller heads who brought us awk(1) improved awk's regular expression handler and you could accomplish everything with awk/sed/grep that perl could do. So few of my coworkers switched to perl: it was yet another "flavor of the month" scripting language that you could easily avoid. Oh: and perl wasn't distributed in money-making unixes of the time, and Linux hadn't initially even come out yet, so using perl meant you had to install it and manage it on every server in the farm across many unix flavors. Talk about de-motivation.

      The nice thing about perl was having the same code everywhere. I dealt with some shells not having functions, awk incompatibilities and name differences. Perl was relative easy to install everywhere (and I had 500+ systems)

      I admit it: I am a developer, I worked in C in 1988, and I work in C today. Back in 1993 when perl first darkened my e-mail inbox, the guy in charge of administering ClearCase wrote a ton of perl scripts to make ClearCase do whatever trickery we needed. I've never quite understood why he snorted the kool-aid and went with perl, but I'm guessing he was bored... with ClearCase administration... and perl gave him something to poke a sharp stick at.

      Clearcase has a version of perl built in. See above

      Fast forward to 2017. I'm still an engineer and my hands are dirty with C code. More than 50 languages have come and gone since the late 80's, but I still butter my bread with C, and for trivial scripting or shell work, I still use awk/sed/grep, and now python. Python is exceptional, but I don't want to go into that: I'm talking about perl.

      I completely skipped perl, and I am glad: any time I have to debug someone else's perl code usually its because it broke in some mysterious way because the author wasn't much of an engineer to begin with, doesn't work here anymore, or was stubbornly holding onto perl because they put so much effort into learning it and tries to avoid responsibility for the old ratty perl code they wrote. The perl developer often hates python with a religious passion, and that's a little weird. And the perl developer doesn't like to use comments in their code, or adds snarky/4-letter-word comments, or leaves dead comments around like little land-mines that distract the next poor sot who has to debug it.

      So as far as perl goes, I'm not a fan: perl has brought me more time-wasting bugs than any other language I have done code-clerk mopping up operations for. So please go away, perl, so I can get some work done. I'm too old to waste the time.

      I'm a sysadmin and have done my share of perl that I & others can't read & debug. I stopped using perl awhile ago and python has caught up with perl's modules.

    2. Re:AWK SED GREP... by DCFusor · · Score: 1

      You can write just as bad code in C, you know, or very nearly. All your complaints seem to be about bad software engineers, and I share them. But I don't blame the language for the idiots.
      It's debatable whether the drive to make it so "anyone can code" was a good idea. If you do that, then you get anyone coding and anyone usually sucks at it.
      Just my never humble opinion.
      Perl was a step along that path, but it's pretty easy to argue that drag drop "VB" class and .net are a step further yet along with those so terrible their names won't be named.
      And no, a web developer isn't a real programmer, at least not in my book. Certainly not a system architect or admin, at least not automagically - I'm aware of people who are good at all that, but they don't have to mess with html, their other skills make them too valuable to waste the time on that.
      And yes, I myself have been at this game since before integrated circuits and do a lot of C too. So, most of y'all can now remove yourselves from my lawn.

      --
      Why guess when you can know? Measure!
    3. Re:AWK SED GREP... by Rutulian · · Score: 1

      so the propeller heads who brought us awk(1) improved awk's regular expression handler and you could accomplish everything with awk/sed/grep that perl could do.

      I use all four on a regular basis and I can assure you this statement is not true at all. Awk is certainly nice, don't get me wrong, especially when you need just a quick one-liner to do some filtering, but there isn't much out there that can meet Perl in regexp support.

  22. Being Larry Wall by q_e_t · · Score: 2

    Is the video like the Malkovich movie?

  23. Re: How's that Perl 6 going? by q_e_t · · Score: 1

    A large number of monkeys with keyboards stand more chance of creating a Perl program than Shakespeare, perhaps.

  24. Re:The problem with breaking backward compatibilit by ggoebel · · Score: 5, Interesting

    I think you ought to test/validate your assumptions and consider evaluating what Perl 6 has to offer. Many of the core Perl 6 developers had little experience or interest in Perl 5. The pace of development and number of committers seems to be accelerating.

    Performance has gotten about 4 times faster in the last year.

    The developer ecosystem is maturing. CPAN6 is here.

    Perl 6 provides Inline::Perl5. Which allows backward compatible access to and mixing of Perl 5 and Perl 6. It also allows you to specify a versioned dialect of Perl 6. So in ~10 years when Perl 6.i is released. Your code targeting Perl 6.d functionality which has been deprecated in 6.e and removed in 6.f will still work.

    The design and implementation of Perl 6 is clean and heavily influenced by Paul Graham's essay on The Hundred-Year Language. Most of Perl 6 is written in both Perl 6 and a subset of Perl 6 called Not Quite Perl (NQP). Which means Perl developers don't need to learn another language to become core developers.

    Larry said that acceleration beats velocity. Perl 6 certainly seems to be accelerating. If you watch the video... there's a lot of exciting things baked into Perl 6. However the focus is on getting things right, clean, and fast (in that order). If/when performance gets within ~10-20% of Perl 5, Python, etc... I think the expressiveness and strangely consistent and clean language design will prompt many to re-evaluate their concept of Perl.

    --
    Life is like an egg better scrambled than fried. -- Ken Sawatari
  25. Perl 5 is fine by dskoll · · Score: 1

    I am the lead developer on a largish commercial spam-filtering product written mostly in Perl. The code is well-structured, readable, easy to modify and well-documented. So I do like Perl 5. As with any language, you have to be disciplined to write good software in it.

    Having heard Larry Wall speak, I have to say he comes across as a slightly mad rambling scatterbrain. Hit talks are as much philosphy and theology as computer science, and that shit just bores the hell out of me.

    From what I've seen of Perl 6 (admittedly this impression is a few years old) it's a complete mess. It's not only Larry's mad ramblings---it's the mad ramblings of hordes of Larry wannabees, resulting in a massively over-engineered too-clever-for-it's-own-good pile o' shite.

  26. Being good vs following rules. by DCFusor · · Score: 1

    Perl 5 pretty much lets you do things your way TMTOWTDI. This means a great programmer can write well structured code that is super easy to read and maintain, and a monkey can write monkey-code and have it still work, kinda - This is one school of thought, and all the complaints about perl 5 I see are about the latter class, which sadly, seems to be the majority of coders - only a few are really good and disciplined. No one's complained about the code I post on my site, ever, it's so obvious how it works, well documented and so on - you can use freedom to make it good too - it's a matter of choice and the bad stuff out there is more a comment on how crappy/lazy humans are rather than the language itself. Along comes the opposite, more or less, Rust, and many people think that a restrictive rule set guarantees better code. Vain, aren't we? You really thought of every way to get it wrong and made a rule about every single way to mess up? Boy could I have some fun with you... Granted, the sheer compiler-warning-error noise will keep away some of the monkeys, and that's probably a good thing, but then again, the fact that it's nowhere near as rich a language means that it's a tool fit for a class of jobs most of us don't do. I'm forced to program in a number of languages, I use perl a lot when I don't have to care, which is more and more of the time (hint: use Inline::Python to steal one-off code - from that language, perl supports many other languages and sometimes runs them faster than natively). Given a choice, it's perl for ease to get to an answer - save programmer time, and C++ for resource or time tight applications where it's worth the extra sweat to get it just so. The rest you can keep. Nope, haven't tried perl 6. I agree it should be named something else. I am somewhat impressed with it as a comp sci excercise, especially through the work of Damian Conway (look up his talk at YAPC "On the shoulders of giants" - it's good and it's hilarious). If Larry is the absent minded professor, and he is, Damian is the mad scientist...

    --
    Why guess when you can know? Measure!
  27. PERL6 wont be a sidenote on the book of languages by aod7br7932 · · Score: 2

    Please have a look at my article about it: https://www.linkedin.com/pulse...

  28. Excel spreadsheets by DrYak · · Score: 1

    Excel spreadsheet {...} So nowadays I end up relying on various modules far more often than I use perl's own built-in formatting capabilities.

    Story of my life.

    We arrived at the conclusion that Excel Spreadsheets (with drop-down selectors) is the best ever interface that our lab technician would dream of for the LIMS of our high throughput sequencer.

    (Ended up using XLSXWriter and co, so that the LIMS could spit out Excel Spreadsheet and accept re-uploads of them).

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]