Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re^2: A philosophical pondering concerning hexes

by tinita (Parson)
on Jun 24, 2004 at 11:08 UTC ( #369284=note: print w/ replies, xml ) Need Help??


in reply to Re: A philosophical pondering concerning hexes
in thread A philosophical pondering concerning hexes

I also note that oct() doesn't happily consume non-octal data. It just screws up when you do that.
huh? oct("0xf") will happily return 15. "0xf" is non-octal in my view...


Comment on Re^2: A philosophical pondering concerning hexes
Download Code
Re: A philosophical pondering concerning hexes
by Abigail-II (Bishop) on Jun 24, 2004 at 11:20 UTC
    My guess is that he means something like:
    $ perl -wle 'print oct 108' Illegal octal digit '8' ignored at -e line 1. 8
    To me, this is just what's Perl is about; regardless of what you throw at it, it does it utter best to make something out of it, and it issues a warning there's something odd about the input. Although in this case, it isn't just Perl that does so - the C functions strtol, and atoi and friends also consume initial portions of a string, stopping at the first character that isn't valid.

    Abigail

      No, I didn't give oct a valid hex number, I gave it an invalid octal number which could have been understood as an otherwise valid decimal number. I had not previously considered that oct() would consume a hex number but since it is implemented using a function shared with hex, I suppose that makes sense.

      perl -wle 'print oct "108"' Illegal octal digit '8' ignored at -e line 1. 8
        So, you want something like this?

        inputoct resultComment
        10771Octal
        108108Decimal
        109109Decimal
        10a266Hexadecimal
        10f271Hexadecimal
        10g8Octal, ignoring 'g'

        Does that seem anyway sensible or useful to you? Or perhaps oct 108 should return 89 (because it's base 9?). And should oct 45 be 29 (because it's base 6)?.

        Abigail

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (4)
As of 2014-09-23 03:48 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (210 votes), past polls