Slashdot Mirror


Is Perl Better Than a Randomly Generated Programming Language?

First time accepted submitter QuantumMist writes "Researchers from Southern Illinois University have published a paper comparing Perl to Quorum(PDF) (their own statistically informed programming language) and Randomo (a programming language whose syntax is partially randomly generated). From the paper: 'Perl users were unable to write programs more accurately than those using a language designed by chance.' Reactions have been enthusiastic, and the authors have responded."

3 of 538 comments (clear)

  1. Well written Perl by danbuter · · Score: 3, Interesting

    When Perl is well written, including indents and not jamming multiple lines all together on one line, it looks very similar to Python, but with a semicolon at the end at each line.

  2. Re:Quorum looks a lot like Pascal by AJWM · · Score: 4, Interesting

    Fortran (at least, IV and earlier) totally ignored white space, even in the middle of an identifier. Of course, this led to problems like

    DO 10 I = 1.10

    meaning "assign the floating point number 1.10 to variable DO10I", when the programmer meant to type

    DO 10 I = 1,10

    meaning "loop from here to label 10 varying I from 1 to 10".

    An error something like this caused the Mariner II probe to Venus to go off course at launch and the Range Safety Officer hit the destruct.

    --
    -- Alastair
  3. Re:Quorum looks a lot like Pascal by Chris+Burke · · Score: 4, Interesting

    If those punctuation marks (or keywords) make the code more readable, then they're not gratuitous are they? I, for one, find brace-less languages fantastically hard to read, Python especially.

    I LUUUUURV Python so much that if it was legal I would marry it, but I completely agree. Curly braces to denote block starts and stops make the code easier to read and manage. I should not have to wonder whether a function or block continues past the bottom of the current screen's worth of code when it ends with a few lines of whitespace because I have to know the indentation level of the next line of code to know if it's in a different block context than the last line of code on the current page. I also should never have to wonder if I re-indented code correctly when cut/pasting or adding/removing a level of block nesting.

    I don't care if Python wants to keep the indentation requirements. Forcing the code of awful programmers to be more readable in this way is a good thing. Forcing all code to be less readable in another way is a bad trade-off. Just add in the damn braces! Then I can use tools to auto-indent for additional readability.

    --

    The enemies of Democracy are