Perl / perl5

🐪 The Perl programming language
https://dev.perl.org/perl5/
Other
1.93k stars 552 forks source link

perlop shouldn't say that C has a defined or #11346

Closed p5pRT closed 12 years ago

p5pRT commented 13 years ago

Migrated from rt.perl.org#90648 (status was 'resolved')

Searchable as RT90648$

p5pRT commented 13 years ago

From tchrist@perl.com

Perlop has this entry​:

  =head2 C-style Logical Defined-Or

That's wrong. It should be only​:

  =head2 Logical Defined-Or

Because there is no such thing as a defined-or in C.

Sheesh.

--tom

p5pRT commented 13 years ago

From @tux

On Sun\, 15 May 2011 14​:44​:09 -0700\, tchrist1 (via RT) \perlbug\-followup@​perl\.org wrote​:

# New Ticket Created by tchrist1 # Please include the string​: [perl #90648] # in the subject line of all future correspondence about this issue. # \<URL​: http​://rt.perl.org/rt3/Ticket/Display.html?id=90648 >

Perlop has this entry​:

=head2 C\-style Logical Defined\-Or

That's wrong. It should be only​:

=head2 Logical Defined\-Or

Because there is no such thing as a defined-or in C.

As you are digging through all docs\, In that area\, did you see my post last week​:

It was not /my/ decision to remove "err" (or "dor") There are however always people asking for it\, and when told that there isn't any\, there are no docs referring to the reason why not. Should there be?

http​://www.perlmonks.org/?node_id=660524

Inline Patch ```diff diff --git a/pod/perlop.pod b/pod/perlop.pod index c97c331..289c421 100644 --- a/pod/perlop.pod +++ b/pod/perlop.pod @@ -911,9 +911,9 @@ expressions. It's equivalent to && except for the very low precedence. This means that it short-circuits: i.e., the right expression is evaluated only if the left expression is true. -=head2 Logical or, Defined or, and Exclusive Or +=head2 Logical or and Exclusive Or X X -X X +X X X Binary "or" returns the logical disjunction of the two surrounding @@ -942,6 +942,8 @@ Then again, you could always use parentheses. Binary "xor" returns the exclusive-OR of the two surrounding expressions. It cannot short circuit, of course. +There is no low precedence operator for defined-OR. + =head2 C Operators Missing From Perl X X<&> X<*> X X<(TYPE)> -- ```

H.Merijn Brand http​://tux.nl Perl Monger http​://amsterdam.pm.org/ using 5.00307 through 5.12 and porting perl5.13.x on HP-UX 10.20\, 11.00\, 11.11\, 11.23 and 11.31\, OpenSuSE 10.1\, 11.0 .. 11.3 and AIX 5.2 and 5.3. http​://mirrors.develooper.com/hpux/ http​://www.test-smoke.org/ http​://qa.perl.org http​://www.goldmark.org/jeff/stupid-disclaimers/

p5pRT commented 13 years ago

The RT System itself - Status changed from 'new' to 'open'

p5pRT commented 13 years ago

From tchrist@perl.com

Yes\, I remember that.

I suppose it's ok to say there is no corresponding low-precedence version.

--tom

p5pRT commented 12 years ago

From @cpansprout

On Sun May 15 23​:02​:40 2011\, hmbrand wrote​:

On Sun\, 15 May 2011 14​:44​:09 -0700\, tchrist1 (via RT) \perlbug\-followup@&#8203;perl\.org wrote​:

# New Ticket Created by tchrist1 # Please include the string​: [perl #90648] # in the subject line of all future correspondence about this issue. # \<URL​: http​://rt.perl.org/rt3/Ticket/Display.html?id=90648 >

Perlop has this entry​:

=head2 C\-style Logical Defined\-Or

That's wrong. It should be only​:

=head2 Logical Defined\-Or

Because there is no such thing as a defined-or in C.

Fixed in 26d9d83b86.

As you are digging through all docs\, In that area\, did you see my post last week​:

It was not /my/ decision to remove "err" (or "dor") There are however always people asking for it\, and when told that there isn't any\, there are no docs referring to the reason why not. Should there be?

http​://www.perlmonks.org/?node_id=660524

diff --git a/pod/perlop.pod b/pod/perlop.pod index c97c331..289c421 100644 --- a/pod/perlop.pod +++ b/pod/perlop.pod @​@​ -911\,9 +911\,9 @​@​ expressions. It's equivalent to && except for the very low precedence. This means that it short-circuits​: i.e.\, the right expression is evaluated only if the left expression is true.

-=head2 Logical or\, Defined or\, and Exclusive Or +=head2 Logical or and Exclusive Or X\<operator\, logical\, or> X\<operator\, logical\, xor> -X\<operator\, logical\, defined or> X\<operator\, logical\, exclusive or> +X\<operator\, logical\, exclusive or> X\ X\

Binary "or" returns the logical disjunction of the two surrounding @​@​ -942\,6 +942\,8 @​@​ Then again\, you could always use parentheses. Binary "xor" returns the exclusive-OR of the two surrounding expressions. It cannot short circuit\, of course.

+There is no low precedence operator for defined-OR. + =head2 C Operators Missing From Perl X\<operator\, missing from perl> X\<&> X\<*> X\ X\<(TYPE)>

Applied as 59ab9d6e. Thank you.

--

Father Chrysostomos

p5pRT commented 12 years ago

@cpansprout - Status changed from 'open' to 'resolved'