2 # This file is part of Language::Befunge::Vector::XS.
3 # Copyright (c) 2008 Jerome Quelin, all rights reserved.
5 # This program is free software; you can redistribute it and/or modify
6 # it under the same terms as Perl itself.
10 package Language
::Befunge
::Vector
::XS
;
20 '+=' => \
&_add_inplace
,
21 '-=' => \
&_substract_inplace
,
23 'eq' => \
&_compare_string
,
26 our $VERSION = '1.1.1';
29 XSLoader
::load
('Language::Befunge::Vector::XS', $VERSION);
31 # Preloaded methods go here.
40 # my $bool = $v->_compare($string);
41 # my $bool = $v eq $string;
43 # Check whether the vector stringifies to $string.
46 my ($self, $str) = @_;
47 return $self->as_string eq $str;
56 Language::Befunge::Vector::XS - Language::Befunge::Vector rewritten for speed
62 The C<Language::Befunge> module makes heavy use of n-dims vectors,
63 mapped to the C<Language::Befunge::Vector> class. This allows to
64 abstract the funge dimension while still keeping the same code for the
67 However, such an heavy usage does have some impact on the performances.
68 Therefore, this modules is basically a rewrite of LBV in XS. If
69 installed, then LBV will automagically load it and replace its own
70 functions with the XS ones.
76 This module implements exactly the same api as LBV. Please refer to this
77 module for more information on the following methods:
93 =item get_all_components()
103 =item standard mathematical operations
105 =item inplace mathematical operations
107 =item comparison operations
114 L<Language::Befunge::Vector>
119 Jerome Quelin, E<lt>jquelin@cpan.orgE<gt>
121 Development is discussed on E<lt>language-befunge@mongueurs.netE<gt>
124 =head1 COPYRIGHT & LICENSE
126 Copyright (c) 2008 Jerome Quelin, all rights reserved.
128 This program is free software; you can redistribute it and/or modify
129 it under the same terms as Perl itself.