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."

6 of 106 comments (clear)

  1. 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 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.

  2. 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.

  3. 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.