in reply to Re: Is Perl less compact than Ruby? (Kind of competition)
in thread Is Perl less compact than Ruby? (Kind of competition)

/i/&& w ord getc||-1
You forgot a '|'. That brings us to 306. :-)

------
We are the carpenters and bricklayers of the Information Age.

Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.

Replies are listed 'Best First'.
Re: Re: Re: Is Perl less compact than Ruby? (Kind of competition)
by jynx (Priest) on Feb 19, 2002 at 19:41 UTC

    my testing has been limited,

    i've only been using hello.eta and hello2.eta, but using | seems to be equivalent to || there. i tested both ways and they seem to work okay on the two hello programs. did your tests come out differently? if so, which programs should i be testing with (that is, which are more indicative of a real ETA program?)

    As for the tic-tac-toe program, no matter which of the recent incarnations of the perl program i try, it seems to hang after i've given it input. does it just take a really long time or is it still running?

    jynx

      'i' is input operator of language, it must push on stack ascii code or -1 on eof.

      ord getc||-1 is excellent, although it's makes impossible to input NULL charaster. Again it's nice question of compatibility that I'm giving up to judge. It will be considered as cheating for sure.

      Update: oops, looks like previous version is also lame here (update2: not!)

      Update2: some perl black magic here:

      • zero is false but "\0" is true.
      • contrary to perlop doc's operator precedence, "ord getc||-1;" means "ord(getc)||-1" not "ord(getc||-1)".

      Update3: Second claim is lying, see "perldoc perlop/named unary operators"

      Use the tic-tac-toe program referenced in the root node.

      ------
      We are the carpenters and bricklayers of the Information Age.

      Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.