http://www.perlmonks.org?node_id=615421


in reply to Re^3: What's wrong with Perl 6?
in thread What's wrong with Perl 6?

Perl allows me to code in the *first way* that comes to mind to solve a problem, yet allows me later to improve the solution in *another way*.

Completely agreeing and pointing out so to underline the nice way into which you put this concept, which is often implicit!

Perl makes it easy for me to visually distinguish variable types and interpolate them in string. This is one of things that made me fell in love in my early Perl days.

Hehe, you will certainly fall in love with the twigils for even better visual distinction and the new finely-tunable interpolating rules, although I bet :qq will do the job 99.9% of the time.

Perl allows me to have as many namespaces as I like (or need) and arrange them in a nested fashion. I can have them in one file, or in their own files. (I just can't stand to say CGI_Application_Plugin_Authentication_Driver_DBI).

I'm not really sure if I understand what you mean. You are aware that in Perl 5 Foo::Bar::Baz bears no relationship to Foo::Bar, arent' you? What do you mean with "nested"?

Unimitable Regular expression

Oh, inimitable but not unimprovable. Indeed Rules smell like they will be impressive. More power and more clarity at the same time!

Optional parentheses, semicolons, and commas as long as they're not required

Agreed to the highest degree for parentheses. I even find myself doing stuff like (func $arg) rather than func($arg) in expressions in which I can't avoid them. That's just me, of course. Half hearted about commas, which is often at the end of a multiline list. Not really agreeing on semicolons, except in subs like

sub foo { Very::Simple::code @_ }
(I don't know how to name this) EXPR if STATEMENT and friends

"Statement modifiers."

Closure, anyone?

Stay tuned with 6 for more FP-like fun. Personally I'm quite fond of the [ ] meta-operator.

Nested scoping

Do you really see that as particularly perlish? I'm currently a Perl-only kinda guy, but I would rather qualify it as quality typical of most modern enough programming languages that are serious about themselves...

Replies are listed 'Best First'.
Re^5: What's wrong with Perl 6?
by naikonta (Curate) on May 15, 2007 at 16:19 UTC
    Completely agreeing and pointing out so to underline the nice way into which you put this concept, which is often implicit!
    Actually, I merely rephrased that. I can't recall whom I cite it from and the exact word per word.
    I'm not really sure if I understand what you mean. You are aware that in Perl 5 Foo::Bar::Baz bears no relationship to Foo::Bar, arent' you? What do you mean with "nested"?
    Yes I am aware. That's just what I exactly meant by "nested", I can have Foo::Bar and Foo::Bar::Baz instead of Foo_Bar and Foo_Bar_Baz (no nested here). I didn't indicate anything between 'nested package name' and 'package relationship'. It's clear that Foo_Bar or Foo_Bar_Baz or CGI_Application_Plugin_Authentication_Driver_DBI are all under the same namespace, while Bar is under Foo and Baz is under Foo::Bar. But I do take advantage that I can arrange some classes/packages stucture within a suite of modules.
    Oh, inimitable but not unimprovable. Indeed Rules smell like they will be impressive. More power and more clarity at the same time!
    Thanks for the correction :-) That was not a typo, it was a mispell.
    "Statement modifiers."
    Thank you, it's indeed in perlsyn.
    Do you really see that as particularly perlish? I'm currently a Perl-only kinda guy, but I would rather qualify it as quality typical of most modern enough programming languages that are serious about themselves...
    At least based on my limited knowledge about other languages. I consider it as Perl's strength in providing high-granular variable scoping: file, package, block, inner-block, inner-inner-block, etc.

    Open source softwares? Share and enjoy. Make profit from them if you can. Yet, share and enjoy!

      Yes I am aware. That's just what I exactly meant by "nested", I can have Foo::Bar and Foo::Bar::Baz instead of Foo_Bar and Foo_Bar_Baz (no nested here). I didn't indicate anything between 'nested package name' and 'package relationship'. It's clear that Foo_Bar or Foo_Bar_Baz or CGI_Application_Plugin_Authentication_Driver_DBI are all under the same namespace, while Bar is under Foo and Baz is under Foo::Bar. But I do take advantage that I can arrange some classes/packages stucture within a suite of modules.

      Expect great improvements in that area too, with 6!

      Oh, inimitable but not unimprovable. Indeed Rules smell like they will be impressive. More power and more clarity at the same time!
      Thanks for the correction :-) That was not a typo, it was a mispell.

      Which correction? I didn't notice any typo nor misspell: I was agreeing once again with your point and "improving" it in a 6-enthusiastic fashion...

        'Unimitable' was corrected to 'inimitable'

        - Boswell -