Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask

Re^2: Perl 6 critique is a good thing

by theorbtwo (Prior)
on Oct 18, 2004 at 19:58 UTC ( #400301=note: print w/replies, xml ) Need Help??

in reply to Re: Perl 6 critique is a good thing
in thread Perl 6 critique is a good thing

What prevents editors from searching on ... vs …?

But mostly, I take exception to your characterization of perl as a minimalist language. It is most certianly not. It has dozens of features that aren't minimal -- that could be easily built out of smaller building blocks. Hashes, for example. It's not difficult to make a hash out of simpler bits. There's no reason for it to be built in to the language, when it can be written inside of the language. That's a minimalist point of view -- but easy hashes are part of what makes perl so nice to deal with. C# and VB and a slew of other languages have objects that are very hash-like... but them being objects instead of first-level concepts makes them annoying to work with.

Perl5 also has lots of things that aren't used, in pratice. Perl6 will get rid of some of those, and introduce some new ones. Also, perl6 is much less a language for beginners then perl5. There are a lot of techniques that you can use in perl6 that are difficult to understand for beginners, or can be. This also means that in the hands of an expert, you can do a lot more with a lot less. It's not a question of better or worse, it's a question of goals, and I think I'll like writing perl6 more then I liked writing perl5 (and I like writing perl5 a lot).

Warning: Unless otherwise stated, code is untested. Do not use without understanding. Code is posted in the hopes it is useful, but without warranty. All copyrights are relinquished into the public domain unless otherwise stated. I am not an angel. I am capable of error, and err on a fairly regular basis. If I made a mistake, please let me know (such as by replying to this node).

Replies are listed 'Best First'.
Re^3: Perl 6 critique is a good thing
by SpanishInquisition (Pilgrim) on Oct 18, 2004 at 20:31 UTC
    Terminology. Suppose one language requires an open desk reference and a web page open to the standard library. That's Java. Suppose another is easily learned and remembered. That's Perl 5. Now suppose we add 50 operators to Perl 5... just like the File test operators, that's something else to remember.

    Having only 3 major data types IS pretty minimalist, maybe not uber-minimalist, but that's a good thing.

    I think I'll like writing perl6 more then I liked writing perl5 (and I like writing perl5 a lot).

    Oh yeah, I totally agree here. Depends who wins the Perl5/Ruby thing, probably, but I know I'll like it better. Can't say that makes it wrong to ask questions about how it could be simpler though.

    Complex tools are a good thing. Advanced concepts in the core are an awesome thing. Innovation is a good thing. However, keeping the syntax clean and straightforward, and ... yes .. minimialist while adding features is important to me. I don't want another "open desk reference" kind of language.

      Can you remember:

      • where split() in void context puts the results?
      • what $| = 2; print $|; will output?
      • what weak references are, and why you might need them?
      • how to use formats?
      • what all of the default punctuation variables do?

      These are just things I thought of off the top of my head. I know the answers to these (except the last two), but I bet another very experianced Perl coder would have to look it up (and some of this stuff is in very obscure places). They'd come up with a completely different list that would stump me. In other words, we would each know a some details that the other doesn't.

      (Unless, that is, your name is Abigail. He can probably beat Larry.)

      Neither of us would a truely complete understanding of the language. We'd just know a useful subset which has been grown over time by our individual experiances with the language.

      In their orginal forms, C and LISP are minimalist languages (I find LISP surprisingly so). If they display complex behavior, it's because they use combinational explosion to produce it (i.e., combining individual components on a massive scale). Perl does do combinational explosion, but it gets a lot of power by refining the details of individual components.

      "There is no shame in being self-taught, only in not trying to learn in the first place." -- Atrus, Myst: The Book of D'ni.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://400301]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (3)
As of 2023-09-24 19:59 GMT
Find Nodes?
    Voting Booth?

    No recent polls found