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


in reply to Perl 6 language -- change in hyperoperator syntax

Please, people, trust the design team. They're all working hard and they're coming up with great stuff.

The reason a search for "hyperoperator" doesn't turn up anything new is that they're no longer called that. The new name for them is "vector operators." (Similarly, superpositions are now called junctions.) Search for that and you'll turn up newer information, though I don't think there's been as much discussion on them lately.

Yes, the vector op has been changed from ^op to »op« or it's ASCII equivalent >>op<<. You should know that there was a lot of discussion on the syntax here, and multiple options were discussed. For a list of proposed syntaxes and their pros and cons, check out this article on google groups.

As to why, specifically, ^op was abolished, I believe it has to do with code like this: @a ^+= @b. I don't remember what exactly the problem was off the top of my head, though I'm sure some searching could turn it up.

As to the use of unicode as an operator, get used to it. Perl 6 source files are in unicode. This is a time of transition. You still have ASCII equivalents you can use, but they'll be a little uglier. If it was possible to make things beautiful without resorting to unicode, they'd have done it. As it is, unicode is only used in marginal cases.

Replies are listed 'Best First'.
Re: Re: Perl 6 language -- change in hyperoperator syntax
by boo_radley (Parson) on Dec 31, 2003 at 22:39 UTC
    Re: Perl 6 language -- change in hyperoperator syntax by elusion
    Please, people, trust the design team.
    Sure, trust. "Trust, but verify" as my Russian ancestors said, and so I asked, having done a seemingly reasonable search first.
    They're all working hard and they're coming up with great stuff.
    True. p6lang has been a source of inspiration, wonderment and bafflement for me. for instance, this thread was a delight to pick through.
    The reason a search for "hyperoperator" doesn't turn up anything new is that they're no longer called that. The new name for them is "vector operators." (Similarly, superpositions are now called junctions.) Search for that and you'll turn up newer information, though I don't think there's been as much discussion on them lately.
    Yeah, that turned up much better results. I think I've come to peace with it since the issue seems now to be driven by desperation and only after a long, arduous debate (not that the design team would undertake such a change capriciously, mind).
    As to the use of unicode as an operator, get used to it. Perl 6 source files are in unicode. This is a time of transition. You still have ASCII equivalents you can use, but they'll be a little uglier. If it was possible to make things beautiful without resorting to unicode, they'd have done it. As it is, unicode is only used in marginal cases.
    I have no problem with unicode source, especially if it means dropping two characters off of this operator. >>foo<< looks like extreme emphasis (probably intended) and put me in mind to see, say, an aol-esque !1!! postfix operator (I kid.)
Re: Re: Perl 6 language -- change in hyperoperator syntax
by TomDLux (Vicar) on Dec 31, 2003 at 21:47 UTC

    I've always been amused/irritated that programming languages inflict American English on the rest of the world. Whether you're French, Chinese, or Greek or Malay, you have to program in English: if/then/else, while, open, ... As a Canadian, I'm especially frustrated at having to use the American spelling of color, instead of colour as used by the rest of the English Speaking world ( UK, Canada, South Afric, New Zealand, Australia, etc.), ,whether I'm looking at Java, Tk, HTML or Javascript.

    So it's an interesting twist to have a unicode operator ... too bad it's a bit lengthy in ASCII. I guess/hope it will motivate people to learn to type unicode.

    --
    TTTATCGGTCGTTATATAGATGTTTGCA

      I've always been amused/irritated that programming languages inflict American English on the rest of the world. Whether you're French, Chinese, or Greek or Malay, you have to program in English: if/then/else, while, open, ...
      When I started to learn programming, one of the first things our professor told us that while the keywords "if", "then", "else", etc might look like English words, they weren't. They were just symbols, and the fact they just happened to look like English words was something we should consider a coincidence.

      At that moment, almost 20 years ago, I thought it was a joke. But over time, I've seen it as a valuable lesson - to be able to abstract away the "English" meaning of the word, and just see the bunch of letters as a symbol.

      Abigail

        Tehn aiagn, all wrdos, wevahter the lungaage, are nintohg mroe tahn slmibyoc rerpetensnatios of iaeds. Wcihh only goes to prove taht dlaiets like silnglep, grammer and pitunaucton aern't itrapnomt pderoivd the idea is clarely cvoeneyd:)


        Examine what is said, not who speaks.
        "Efficiency is intelligent laziness." -David Dunham
        "Think for yourself!" - Abigail
        Hooray!

      You won't have to go Unicode. Latin-1 source will work as well.