NAME

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

VERSION

version 5.000

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

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

AUTHOR

Jerome Quelin

COPYRIGHT AND LICENSE

This software is copyright (c) 2003 by Jerome Quelin.

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