Two sets of relation operators. One is to compare numerically the other is to compare as strings, based on the ASCII table.
Numeric | String (ASCII) | Meaning |
== | eq | equal |
!= | ne | not equal |
< | lt | less than |
> | gt | greater than |
<= | le | less than or equal |
>= | ge | greater then or equal |
See also S03-operators.pod
3 == 4 # false '35' eq 35.0 # false '35' == 35.0 # true 13 > 2 # true 13 gt 2 # false !!! "hello" == "world" # throws exception "hello" eq "world" # false "hello" == "" # throws exception "hello" eq "" # false
tutorial/scalars/comparison_operators.p6
#!/usr/bin/env perl6 use v6; say 4 == 4 ?? "TRUE" !! "FALSE"; # TRUE say 3 == 4 ?? "TRUE" !! "FALSE"; # FALSE say "3.0" == 3 ?? "TRUE" !! "FALSE"; # TRUE say "3.0" eq 3 ?? "TRUE" !! "FALSE"; # FALSE say 13 > 2 ?? "TRUE" !! "FALSE"; # TRUE say 13 gt 2 ?? "TRUE" !! "FALSE"; # FALSE #say "foo" == "" ?? "TRUE" !! "FALSE"; # Exception say "foo" eq "" ?? "TRUE" !! "FALSE"; # FALSE #say "foo" == "bar" ?? "TRUE" !! "FALSE"; # Exception say "foo" eq "bar" ?? "TRUE" !! "FALSE"; # FALSE
Cannot convert string to number: base-10 number must begin with valid digits or '.'
Published on 2012-01-01