The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Language::Befunge::IP::lib::ORTH - Orthogonal easement extension

DESCRIPTION

The ORTH fingerprint (0x4f525448) is designed to ease transition between the Orthogonal programming language and Befunge-98 (or higher dimension Funges).

Even if transition from Orthogonal is not an issue, the ORTH library contains some potentially interesting instructions not in standard Funge-98.

FUNCTIONS

new

Create a new ORTH instance.

Bit operations

A( $a, $b )

Push back $a & $b (bitwise AND).

O( $a, $b )

Push back $a | $b (bitwise OR).

E( $a, $b )

Push back $a ^ $b (bitwise XOR).

Push & get

G( $y, $x )

Push back value stored at coords ($x, $y). Note that Befunge get is g($x,$y) (ie, the arguments are reversed).

P( $v, $y, $x )

Store value $v at coords ($x, $y). Note that Befunge put is p($v,$x,$y) (ie, the coordinates are reversed).

Output

S( 0gnirts )

Print popped 0gnirts on STDOUT.

Coordinates & velocity changes

X( $x )

Change X coordinate of IP to $x.

Y( $y )

Change Y coordinate of IP to $y.

V( $dx )

Change X coordinate of IP velocity to $dx.

W( $dy )

Change Y coordinate of IP velocity to $dy.

Miscellaneous

Z( $bool )

Test the top stack element, and if zero, skip over the next cell (i.e., add the delta twice to the current position).

SEE ALSO

Language::Befunge, http://catseye.tc/projects/funge98/library/ORTH.html, and http://www.muppetlabs.com/~breadbox/orth/orth.html.

AUTHOR

Jerome Quelin, <jquelin@cpan.org>

COPYRIGHT & LICENSE

Copyright (c) 2001-2009 Jerome Quelin, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.