b psp
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 77
KPSP 0.1.1
KPSP provides an IOSlave for the PSP (Playstation Portable). more>>
KPSP provides an IOSlave for the PSP (Playstation Portable).
You just simply connect your PSP to your computer, start Konqueror and type "psp:/".
Installation from source:
Get the source-package from the download page.
tar xfvz kio_psp-< VERSION >.tar.gz
cd kio_psp-< VERSION >
./configure --prefix=< where KDE is installed >
make
make install # Probably you need root-privileges
Installation from CVS:
You have to download the sources from CVS:
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/kpsp login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/kpsp co -P kio_psp
Get the admin-directory, used by the build-system.
cd kio_psp
svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.3/kde-common/admin
Compile and install.
make -f Makefile.cvs
./configure --prefix=
make
make install # Probably you need root-privileges
Enhancements:
- Virtual root-folders have an access-type
- Creation of a folder failed when the media-folder wasnt created before.
- Better integration into the KDE Control Center
<<lessYou just simply connect your PSP to your computer, start Konqueror and type "psp:/".
Installation from source:
Get the source-package from the download page.
tar xfvz kio_psp-< VERSION >.tar.gz
cd kio_psp-< VERSION >
./configure --prefix=< where KDE is installed >
make
make install # Probably you need root-privileges
Installation from CVS:
You have to download the sources from CVS:
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/kpsp login
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/kpsp co -P kio_psp
Get the admin-directory, used by the build-system.
cd kio_psp
svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.3/kde-common/admin
Compile and install.
make -f Makefile.cvs
./configure --prefix=
make
make install # Probably you need root-privileges
Enhancements:
- Virtual root-folders have an access-type
- Creation of a folder failed when the media-folder wasnt created before.
- Better integration into the KDE Control Center
Download (0.52MB)
Added: 2006-02-01 License: GPL (GNU General Public License) Price:
1362 downloads
PSP-Recode 1.1
PSP-Recode is another service menu for PSP videos, tested with my 1.5-2.71-B PSP and works perfect. more>>
PSP-Recode is another service menu for PSP videos, tested with my 1.5-2.71-B PSP and works perfect.
Based on podencoder and original psp-recode for mp4ip, but this only need the last version of ffmpeg with PSP suport.
This script only required ffmpeg and kdialog installed in your system, but, for best performance (progress bars) you must install zenity and mplayer.
Installation:
Copy < PSP_Video.desktop > to < $HOME/.kde/share/apps/konqueror/servicemenus/ >,
and copy < psp-recode.sh > to < $HOME/bin > directory or another one that is in
your $PATH.
You can see PSP-Recode options typing < psp-recode.sh --help > in one console.
Remember that your PSP need runing firmware up to 2.01 or emulated firmware.
Enhancements:
- Bug fixed if your ffmpeg version uses video bitrate in bits/s or in kbits/s, the program ask you.
<<lessBased on podencoder and original psp-recode for mp4ip, but this only need the last version of ffmpeg with PSP suport.
This script only required ffmpeg and kdialog installed in your system, but, for best performance (progress bars) you must install zenity and mplayer.
Installation:
Copy < PSP_Video.desktop > to < $HOME/.kde/share/apps/konqueror/servicemenus/ >,
and copy < psp-recode.sh > to < $HOME/bin > directory or another one that is in
your $PATH.
You can see PSP-Recode options typing < psp-recode.sh --help > in one console.
Remember that your PSP need runing firmware up to 2.01 or emulated firmware.
Enhancements:
- Bug fixed if your ffmpeg version uses video bitrate in bits/s or in kbits/s, the program ask you.
Download (0.003MB)
Added: 2006-11-09 License: GPL (GNU General Public License) Price:
1094 downloads
PSIX 1.1
PSIX is a nice style for KDE, inspired by the Sony PSP. more>>
PSIX is originally a shell for the Sony PSP. I found the shell to have great graphics and a nice interface so i decided to port the look and feel over to one of the best window managers and OS. I also did this without falling under any License agreements because no one likes GPL.
Note: If installer dosent open from Konqueror then start installer from Konsole (sh Install PSIX Theme.bash)
<<lessNote: If installer dosent open from Konqueror then start installer from Konsole (sh Install PSIX Theme.bash)
Download (1.4MB)
Added: 2007-04-16 License: Freeware Price:
550 downloads
B::C 5.8.8
B::C is Perl compilers C backend. more>>
B::C is Perl compilers C backend.
SYNOPSIS
perl -MO=C[,OPTIONS] foo.pl
This compiler backend takes Perl source and generates C source code corresponding to the internal structures that perl uses to run your program. When the generated C source is compiled and run, it cuts out the time which perl would have taken to load and parse your program into its internal semi-compiled form. That means that compiling with this backend will not help improve the runtime execution speed of your program but may improve the start-up time. Depending on the environment in which your program runs this may be either a help or a hindrance.
OPTIONS
If there are any non-option arguments, they are taken to be names of objects to be saved (probably doesnt work properly yet). Without extra arguments, it saves the main program.
-ofilename
Output to filename instead of STDOUT
-v
Verbose compilation (currently gives a few compilation statistics).
--
Force end of options
-uPackname
Force apparently unused subs from package Packname to be compiled. This allows programs to use eval "foo()" even when sub foo is never seen to be used at compile time. The down side is that any subs which really are never used also have code generated. This option is necessary, for example, if you have a signal handler foo which you initialise with $SIG{BAR} = "foo". A better fix, though, is just to change it to $SIG{BAR} = &foo. You can have multiple -u options. The compiler tries to figure out which packages may possibly have subs in which need compiling but the current version doesnt do it very well. In particular, it is confused by nested packages (i.e. of the form A::B) where package A does not contain any subs.
-D
Debug options (concatenated or separate flags like perl -D).
-Do
OPs, prints each OP as its processed
-Dc
COPs, prints COPs as processed (incl. file & line num)
-DA
prints AV information on saving
-DC
prints CV information on saving
-DM
prints MAGIC information on saving
-f
Force options/optimisations on or off one at a time. You can explicitly disable an option using -fno-option. All options default to disabled.
-fcog
Copy-on-grow: PVs declared and initialised statically.
-fsave-data
Save package::DATA filehandles ( only available with PerlIO ).
-fppaddr
Optimize the initialization of op_ppaddr.
-fwarn-sv
Optimize the initialization of cop_warnings.
-fuse-script-name
Use the script name instead of the program name as $0.
-fsave-sig-hash
Save compile-time modifications to the %SIG hash.
-On
Optimisation level (n = 0, 1, 2, ...). -O means -O1.
-O0
Disable all optimizations.
-O1
Enable -fcog.
-O2
Enable -fppaddr, -fwarn-sv.
-llimit
Some C compilers impose an arbitrary limit on the length of string constants (e.g. 2048 characters for Microsoft Visual C++). The -llimit options tells the C backend not to generate string literals exceeding that limit.
<<lessSYNOPSIS
perl -MO=C[,OPTIONS] foo.pl
This compiler backend takes Perl source and generates C source code corresponding to the internal structures that perl uses to run your program. When the generated C source is compiled and run, it cuts out the time which perl would have taken to load and parse your program into its internal semi-compiled form. That means that compiling with this backend will not help improve the runtime execution speed of your program but may improve the start-up time. Depending on the environment in which your program runs this may be either a help or a hindrance.
OPTIONS
If there are any non-option arguments, they are taken to be names of objects to be saved (probably doesnt work properly yet). Without extra arguments, it saves the main program.
-ofilename
Output to filename instead of STDOUT
-v
Verbose compilation (currently gives a few compilation statistics).
--
Force end of options
-uPackname
Force apparently unused subs from package Packname to be compiled. This allows programs to use eval "foo()" even when sub foo is never seen to be used at compile time. The down side is that any subs which really are never used also have code generated. This option is necessary, for example, if you have a signal handler foo which you initialise with $SIG{BAR} = "foo". A better fix, though, is just to change it to $SIG{BAR} = &foo. You can have multiple -u options. The compiler tries to figure out which packages may possibly have subs in which need compiling but the current version doesnt do it very well. In particular, it is confused by nested packages (i.e. of the form A::B) where package A does not contain any subs.
-D
Debug options (concatenated or separate flags like perl -D).
-Do
OPs, prints each OP as its processed
-Dc
COPs, prints COPs as processed (incl. file & line num)
-DA
prints AV information on saving
-DC
prints CV information on saving
-DM
prints MAGIC information on saving
-f
Force options/optimisations on or off one at a time. You can explicitly disable an option using -fno-option. All options default to disabled.
-fcog
Copy-on-grow: PVs declared and initialised statically.
-fsave-data
Save package::DATA filehandles ( only available with PerlIO ).
-fppaddr
Optimize the initialization of op_ppaddr.
-fwarn-sv
Optimize the initialization of cop_warnings.
-fuse-script-name
Use the script name instead of the program name as $0.
-fsave-sig-hash
Save compile-time modifications to the %SIG hash.
-On
Optimisation level (n = 0, 1, 2, ...). -O means -O1.
-O0
Disable all optimizations.
-O1
Enable -fcog.
-O2
Enable -fppaddr, -fwarn-sv.
-llimit
Some C compilers impose an arbitrary limit on the length of string constants (e.g. 2048 characters for Microsoft Visual C++). The -llimit options tells the C backend not to generate string literals exceeding that limit.
Download (12.2MB)
Added: 2007-06-26 License: Perl Artistic License Price:
907 downloads
Other version of B
QPSPManager 1.3
QPBPManager is a PBP File manager for Linux. more>>
QPBPManager is a PBP File manager for Linux. The software is intended to use as a user friendly GUI to the known tedious pack and unpack processes of the PSP PBP files, directory generation and further copy into the PSP, in order to execute those binary files in PSPs with firmware 1.50.
QPSPManager automates this process to make it a simple task to the end user, who will only have to select a PBP file and the PSP directory, leaving all other tasks to the program. It also provides some other cool features such as selecting custom PNG, PMF and AT3 files to use as an icon or background in the PSP menu.
QPBPManager also allows the user to backup the savegames to the computer and copy those savegames later to the PSP.
Main features:
- Unpacks PBP files and selects automatically the icon and background files from the source file.
- Extracts the program name included in the PBP file and sets it as default output directory.
- Extracts the ELF of the PBP file and packs a fake PBP file without the ELF for showing in the menu of the PSP.
- Allows to select custom icon and background files to use in the menu.
- Allows to select custom video and music files to use in the menu.
- Allows to select the output directory on the PSP and the actual PSP directory, which is saved as an option for further usages, so you only have to configure it once (as long as the PSP directory does not change).
- Provides support for backup the savegames on the PSP to the computer and viceversa.
Although QPSPManager was mainly designed only to transfer PBP files into the PSP so they can be executed through the memory stick menu, Im thinking about new features in future versions non related to PBP file management. Some of those features:
- Conversion and transfering of any kind of video file. It will allow to convert all kind of video files into the PSP format and transfer the files to the PSP to allow viewing them on the console.
- Conversion and transfering of any kind of audio file. It will allow to convert all kind of audio files into the PSP format (mp3) and transfer the files to the PSP to allow hearing them on the console.
Enhancements:
- Added ISO/CISO compression/decompression and transfer support.
- Fixed bug where you couldnt rename a directory in the PSP.
- Changed renaming policy for kxploit.
- Copy file routine changed.
- Support for different linux distributions where mount options change the filenames of the mounted PSP to uppercase.
<<lessQPSPManager automates this process to make it a simple task to the end user, who will only have to select a PBP file and the PSP directory, leaving all other tasks to the program. It also provides some other cool features such as selecting custom PNG, PMF and AT3 files to use as an icon or background in the PSP menu.
QPBPManager also allows the user to backup the savegames to the computer and copy those savegames later to the PSP.
Main features:
- Unpacks PBP files and selects automatically the icon and background files from the source file.
- Extracts the program name included in the PBP file and sets it as default output directory.
- Extracts the ELF of the PBP file and packs a fake PBP file without the ELF for showing in the menu of the PSP.
- Allows to select custom icon and background files to use in the menu.
- Allows to select custom video and music files to use in the menu.
- Allows to select the output directory on the PSP and the actual PSP directory, which is saved as an option for further usages, so you only have to configure it once (as long as the PSP directory does not change).
- Provides support for backup the savegames on the PSP to the computer and viceversa.
Although QPSPManager was mainly designed only to transfer PBP files into the PSP so they can be executed through the memory stick menu, Im thinking about new features in future versions non related to PBP file management. Some of those features:
- Conversion and transfering of any kind of video file. It will allow to convert all kind of video files into the PSP format and transfer the files to the PSP to allow viewing them on the console.
- Conversion and transfering of any kind of audio file. It will allow to convert all kind of audio files into the PSP format (mp3) and transfer the files to the PSP to allow hearing them on the console.
Enhancements:
- Added ISO/CISO compression/decompression and transfer support.
- Fixed bug where you couldnt rename a directory in the PSP.
- Changed renaming policy for kxploit.
- Copy file routine changed.
- Support for different linux distributions where mount options change the filenames of the mounted PSP to uppercase.
Download (0.095MB)
Added: 2007-08-07 License: GPL (GNU General Public License) Price:
507 downloads
B-net 1.1
B-net Software is a Website Content Management software that allows you have a dynamic website. more>>
B-net project is a Website Content Management software that allows you have a dynamic website and add content to your website without knowing anything about HTML.
Main features:
- News Publishing
- Polls / Opinions
- Guest Book
- ShoutBox
- Image Gallery
- Admin interface for managing smilies (used in shoutbox, guestbook etc)
- Admin interface for managing Bad Word List
- Templating system.
- Multi Language support. Kiswahili being one of them of course.
Enhancements:
- Security holes in guesbook.php and shoutbox.php have been fixed.
<<lessMain features:
- News Publishing
- Polls / Opinions
- Guest Book
- ShoutBox
- Image Gallery
- Admin interface for managing smilies (used in shoutbox, guestbook etc)
- Admin interface for managing Bad Word List
- Templating system.
- Multi Language support. Kiswahili being one of them of course.
Enhancements:
- Security holes in guesbook.php and shoutbox.php have been fixed.
Download (0.14MB)
Added: 2006-08-25 License: GPL (GNU General Public License) Price:
1158 downloads
jE6-B 0.3
jE6-B is an emulator of some of the functionality of the E6B Flight Computer. more>>
jE6-B project is an emulator of some of the functionality of the E6B Flight Computer.
This program was inspired by the similar application called Virtual E6-B written by Jesse Kempa. However that application does not seem to have been updated for some time and was based on Visual Basic, so is only for Windows (without emulation).
As I am a very keen Python user, I decided to write an Open Source Cross-Platform version of the features provided by this previous program in that language. This is my first open source project, so this program is very much a learning exercise for me. After a little playing with the various GUI toolkits available, I decided to write the program actually in Jython (a Java implementation of Python - see www.jython.org), which would make use of the Java Swing GUI toolset and also the cross-platform advantages offered by Java.
<<lessThis program was inspired by the similar application called Virtual E6-B written by Jesse Kempa. However that application does not seem to have been updated for some time and was based on Visual Basic, so is only for Windows (without emulation).
As I am a very keen Python user, I decided to write an Open Source Cross-Platform version of the features provided by this previous program in that language. This is my first open source project, so this program is very much a learning exercise for me. After a little playing with the various GUI toolkits available, I decided to write the program actually in Jython (a Java implementation of Python - see www.jython.org), which would make use of the Java Swing GUI toolset and also the cross-platform advantages offered by Java.
Download (0.50MB)
Added: 2006-07-28 License: GPL (GNU General Public License) Price:
1191 downloads
B::Deparse 5.8.8
B::Deparse is a Perl compiler backend to produce perl code. more>>
B::Deparse is a Perl compiler backend to produce perl code.
SYNOPSIS
perl -MO=Deparse[,-d][,-fFILE][,-p][,-q][,-l] [,-sLETTERS][,-xLEVEL] prog.pl
B::Deparse is a backend module for the Perl compiler that generates perl source code, based on the internal compiled structure that perl itself creates after parsing a program. The output of B::Deparse wont be exactly the same as the original source, since perl doesnt keep track of comments or whitespace, and there isnt a one-to-one correspondence between perls syntactical constructions and their compiled form, but it will often be close. When you use the -p option, the output also includes parentheses even when they are not required by precedence, which can make it easy to see if perl is parsing your expressions the way you intended.
While B::Deparse goes to some lengths to try to figure out what your original program was doing, some parts of the language can still trip it up; it still fails even on some parts of Perls own test suite. If you encounter a failure other than the most common ones described in the BUGS section below, you can help contribute to B::Deparses ongoing development by submitting a bug report with a small example.
OPTIONS
As with all compiler backend options, these must follow directly after the -MO=Deparse, separated by a comma but not any white space.
-d
Output data values (when they appear as constants) using Data::Dumper. Without this option, B::Deparse will use some simple routines of its own for the same purpose. Currently, Data::Dumper is better for some kinds of data (such as complex structures with sharing and self-reference) while the built-in routines are better for others (such as odd floating-point values).
-fFILE
Normally, B::Deparse deparses the main code of a program, and all the subs defined in the same file. To include subs defined in other files, pass the -f option with the filename. You can pass the -f option several times, to include more than one secondary file. (Most of the time you dont want to use it at all.) You can also use this option to include subs which are defined in the scope of a #line directive with two parameters.
-l
Add #line declarations to the output based on the line and file locations of the original code.
-p
Print extra parentheses. Without this option, B::Deparse includes parentheses in its output only when they are needed, based on the structure of your program. With -p, it uses parentheses (almost) whenever they would be legal. This can be useful if you are used to LISP, or if you want to see how perl parses your input. If you say
if ($var & 0x7f == 65) {print "Gimme an A!"}
print ($which ? $a : $b), "n";
$name = $ENV{USER} or "Bob";
B::Deparse,-p will print
if (($var & 0)) {
print(Gimme an A!)
};
(print(($which ? $a : $b)), ???);
(($name = $ENV{USER}) or ???)
which probably isnt what you intended (the ??? is a sign that perl optimized away a constant value).
-P
Disable prototype checking. With this option, all function calls are deparsed as if no prototype was defined for them. In other words,
perl -MO=Deparse,-P -e sub foo (@) { 1 } foo @x
will print
sub foo (@) {
1;
}
&foo(@x);
making clear how the parameters are actually passed to foo.
-q
Expand double-quoted strings into the corresponding combinations of concatenation, uc, ucfirst, lc, lcfirst, quotemeta, and join. For instance, print
print "Hello, $world, @ladies, u$gentlemenE, uL$me!";
as
print Hello, . $world . , . join($", @ladies) . ,
. ucfirst($gentlemen) . , . ucfirst(lc $me . !);
Note that the expanded form represents the way perl handles such constructions internally -- this option actually turns off the reverse translation that B::Deparse usually does. On the other hand, note that $x = "$y" is not the same as $x = $y: the former makes the value of $y into a string before doing the assignment.
-sLETTERS
Tweak the style of B::Deparses output. The letters should follow directly after the s, with no space or punctuation. The following options are available:
C
Cuddle elsif, else, and continue blocks. For example, print
if (...) {
...
} else {
...
}
instead of
if (...) {
...
}
else {
...
}
The default is not to cuddle.
iNUMBER
Indent lines by multiples of NUMBER columns. The default is 4 columns.
T
Use tabs for each 8 columns of indent. The default is to use only spaces. For instance, if the style options are -si4T, a line thats indented 3 times will be preceded by one tab and four spaces; if the options were -si8T, the same line would be preceded by three tabs.
vSTRING.
Print STRING for the value of a constant that cant be determined because it was optimized away (mnemonic: this happens when a constant is used in void context). The end of the string is marked by a period. The string should be a valid perl expression, generally a constant. Note that unless its a number, it probably needs to be quoted, and on a command line quotes need to be protected from the shell. Some conventional values include 0, 1, 42, , foo, and Useless use of constant omitted (which may need to be -sv"Useless use of constant omitted." or something similar depending on your shell). The default is ???. If youre using B::Deparse on a module or other file thats required, you shouldnt use a value that evaluates to false, since the customary true constant at the end of a module will be in void context when the file is compiled as a main program.
-xLEVEL
Expand conventional syntax constructions into equivalent ones that expose their internal operation. LEVEL should be a digit, with higher values meaning more expansion. As with -q, this actually involves turning off special cases in B::Deparses normal operations.
If LEVEL is at least 3, for loops will be translated into equivalent while loops with continue blocks; for instance
for ($i = 0; $i < 10; ++$i) {
print $i;
}
turns into
$i = 0;
while ($i < 10) {
print $i;
} continue {
++$i
}
Note that in a few cases this translation cant be perfectly carried back into the source code -- if the loops initializer declares a my variable, for instance, it wont have the correct scope outside of the loop.
If LEVEL is at least 5, use declarations will be translated into BEGIN blocks containing calls to require and import; for instance,
use strict refs;
turns into
sub BEGIN {
require strict;
do {
strict->import(refs)
};
}
If LEVEL is at least 7, if statements will be translated into equivalent expressions using &&, ?: and do {}; for instance
print hi if $nice;
if ($nice) {
print hi;
}
if ($nice) {
print hi;
} else {
print bye;
}
turns into
$nice and print hi;
$nice and do { print hi };
$nice ? do { print hi } : do { print bye };
Long sequences of elsifs will turn into nested ternary operators, which B::Deparse doesnt know how to indent nicely.
<<lessSYNOPSIS
perl -MO=Deparse[,-d][,-fFILE][,-p][,-q][,-l] [,-sLETTERS][,-xLEVEL] prog.pl
B::Deparse is a backend module for the Perl compiler that generates perl source code, based on the internal compiled structure that perl itself creates after parsing a program. The output of B::Deparse wont be exactly the same as the original source, since perl doesnt keep track of comments or whitespace, and there isnt a one-to-one correspondence between perls syntactical constructions and their compiled form, but it will often be close. When you use the -p option, the output also includes parentheses even when they are not required by precedence, which can make it easy to see if perl is parsing your expressions the way you intended.
While B::Deparse goes to some lengths to try to figure out what your original program was doing, some parts of the language can still trip it up; it still fails even on some parts of Perls own test suite. If you encounter a failure other than the most common ones described in the BUGS section below, you can help contribute to B::Deparses ongoing development by submitting a bug report with a small example.
OPTIONS
As with all compiler backend options, these must follow directly after the -MO=Deparse, separated by a comma but not any white space.
-d
Output data values (when they appear as constants) using Data::Dumper. Without this option, B::Deparse will use some simple routines of its own for the same purpose. Currently, Data::Dumper is better for some kinds of data (such as complex structures with sharing and self-reference) while the built-in routines are better for others (such as odd floating-point values).
-fFILE
Normally, B::Deparse deparses the main code of a program, and all the subs defined in the same file. To include subs defined in other files, pass the -f option with the filename. You can pass the -f option several times, to include more than one secondary file. (Most of the time you dont want to use it at all.) You can also use this option to include subs which are defined in the scope of a #line directive with two parameters.
-l
Add #line declarations to the output based on the line and file locations of the original code.
-p
Print extra parentheses. Without this option, B::Deparse includes parentheses in its output only when they are needed, based on the structure of your program. With -p, it uses parentheses (almost) whenever they would be legal. This can be useful if you are used to LISP, or if you want to see how perl parses your input. If you say
if ($var & 0x7f == 65) {print "Gimme an A!"}
print ($which ? $a : $b), "n";
$name = $ENV{USER} or "Bob";
B::Deparse,-p will print
if (($var & 0)) {
print(Gimme an A!)
};
(print(($which ? $a : $b)), ???);
(($name = $ENV{USER}) or ???)
which probably isnt what you intended (the ??? is a sign that perl optimized away a constant value).
-P
Disable prototype checking. With this option, all function calls are deparsed as if no prototype was defined for them. In other words,
perl -MO=Deparse,-P -e sub foo (@) { 1 } foo @x
will print
sub foo (@) {
1;
}
&foo(@x);
making clear how the parameters are actually passed to foo.
-q
Expand double-quoted strings into the corresponding combinations of concatenation, uc, ucfirst, lc, lcfirst, quotemeta, and join. For instance, print
print "Hello, $world, @ladies, u$gentlemenE, uL$me!";
as
print Hello, . $world . , . join($", @ladies) . ,
. ucfirst($gentlemen) . , . ucfirst(lc $me . !);
Note that the expanded form represents the way perl handles such constructions internally -- this option actually turns off the reverse translation that B::Deparse usually does. On the other hand, note that $x = "$y" is not the same as $x = $y: the former makes the value of $y into a string before doing the assignment.
-sLETTERS
Tweak the style of B::Deparses output. The letters should follow directly after the s, with no space or punctuation. The following options are available:
C
Cuddle elsif, else, and continue blocks. For example, print
if (...) {
...
} else {
...
}
instead of
if (...) {
...
}
else {
...
}
The default is not to cuddle.
iNUMBER
Indent lines by multiples of NUMBER columns. The default is 4 columns.
T
Use tabs for each 8 columns of indent. The default is to use only spaces. For instance, if the style options are -si4T, a line thats indented 3 times will be preceded by one tab and four spaces; if the options were -si8T, the same line would be preceded by three tabs.
vSTRING.
Print STRING for the value of a constant that cant be determined because it was optimized away (mnemonic: this happens when a constant is used in void context). The end of the string is marked by a period. The string should be a valid perl expression, generally a constant. Note that unless its a number, it probably needs to be quoted, and on a command line quotes need to be protected from the shell. Some conventional values include 0, 1, 42, , foo, and Useless use of constant omitted (which may need to be -sv"Useless use of constant omitted." or something similar depending on your shell). The default is ???. If youre using B::Deparse on a module or other file thats required, you shouldnt use a value that evaluates to false, since the customary true constant at the end of a module will be in void context when the file is compiled as a main program.
-xLEVEL
Expand conventional syntax constructions into equivalent ones that expose their internal operation. LEVEL should be a digit, with higher values meaning more expansion. As with -q, this actually involves turning off special cases in B::Deparses normal operations.
If LEVEL is at least 3, for loops will be translated into equivalent while loops with continue blocks; for instance
for ($i = 0; $i < 10; ++$i) {
print $i;
}
turns into
$i = 0;
while ($i < 10) {
print $i;
} continue {
++$i
}
Note that in a few cases this translation cant be perfectly carried back into the source code -- if the loops initializer declares a my variable, for instance, it wont have the correct scope outside of the loop.
If LEVEL is at least 5, use declarations will be translated into BEGIN blocks containing calls to require and import; for instance,
use strict refs;
turns into
sub BEGIN {
require strict;
do {
strict->import(refs)
};
}
If LEVEL is at least 7, if statements will be translated into equivalent expressions using &&, ?: and do {}; for instance
print hi if $nice;
if ($nice) {
print hi;
}
if ($nice) {
print hi;
} else {
print bye;
}
turns into
$nice and print hi;
$nice and do { print hi };
$nice ? do { print hi } : do { print bye };
Long sequences of elsifs will turn into nested ternary operators, which B::Deparse doesnt know how to indent nicely.
Download (12.2MB)
Added: 2007-06-25 License: Perl Artistic License Price:
852 downloads
Plan/B 1.5
Plan/B is a network-aware file backup system. more>>
Plan/B is a network aware file backup system specifically designed to make the backup of files from multiple machines to a variety of devices simple.
The system provides features such as comprehensive reporting, the ability to use CDROM (and soon DVD) drives across the network, as well as centralised management.
Plan/B can be deployed on Windows and Linux systems.
Main features:
General
- Backup anything, to anywhere: You can use any kind of device that plasticine knows about (currently CDROM, Local disk, Network share, FTP device) as either a source or destination. There is no limitation (as there is in DataArmour).
- Multiple sources, Multiple Destinations: A backup may source its files from multiple machines and devices. The destinations for a backup job can also be any number of machines or devices. Thus it is now easy to have a single set of files (documents, code or other important assets) copied to more than one location using a single job. No need to clone a job anymore!
- Multi-Platform: As the system is written in Java, it will work with any machine for which there is a VM (this is true for the backup server and agents). The administration console can be run on either a Linux or Windows machine (when SWT, the GUI framework used for the console matures on OsX, the console will be able to run on that OS as well)
- Volume spanning: If any removable destination is out of space, then it is possible to request the next volume during the backup process. A good example of this is backup to multiple CDs. Plasticine supports both the spanning of single files across multiple media, and also the saving of complete files across different media. In the first case, a large file can be split across two volumes. In the second case, only complete files are written to any volume (obviously, if the file is larger than the size of the volume, it will have to be split up).
- Flexible selection: A single job can backup whatever is deemed important to the user. The files to backup are specified by rules, which can be as simple as include everything, and complex as include all word documents, all excel spreadsheets under my docs directory, and everything NOT ending in .bak under the data directory
- Flexible scheduler: Jobs can be run whenever you like. The current scheduling implementation takes on a form very similar to Cron, but other implementations are easily added. The important point here is that the process of deciding when a backup should be run is completely separated from anything else about the backup job. This is a change from DataArmour, where the scheduling (specifically, the weekly incremental backup job scheduling) is fixed to run on a Monday, with a full backup occurring every week. In Plasticine, user defined schedules are possible.
- Statistics: The system emits various statistics while in operation, including current progress of various jobs, jobs in the run queue, current load, and recent logged events.
Enterprise
- Reliable:The remote agents are resilient to network failure. If a server cannot be contacted, they will move into a discovery mode until the server is back up. No configuration is required!
- Painless installation: The system is very easy to install - just run the included windows installer and tell it what kind of install you want. All services are configured automatically.
- Administration Console: The backup server is a separate process, which is administered via a GUI console. The console can be run from any machine, and can control and manage the settings for the backup server and any client. That means you can configure everything from one place.
Enhancements:
- This release added an option to specify that the destination location should be deleted prior to the backup occuring.
- It also added an option to copy full folders and specify whether or not to create an absolute or relative backup.
- Completion was sped up by detaching the email sending from the job completion process.
- Warnings are now used to log more in the reports for situations that are not necessarily fatal.
- When adding a source or destination, the file browser is now automatically opened for you.
- It is now possible to have multiple email recipients for a backup report.
<<lessThe system provides features such as comprehensive reporting, the ability to use CDROM (and soon DVD) drives across the network, as well as centralised management.
Plan/B can be deployed on Windows and Linux systems.
Main features:
General
- Backup anything, to anywhere: You can use any kind of device that plasticine knows about (currently CDROM, Local disk, Network share, FTP device) as either a source or destination. There is no limitation (as there is in DataArmour).
- Multiple sources, Multiple Destinations: A backup may source its files from multiple machines and devices. The destinations for a backup job can also be any number of machines or devices. Thus it is now easy to have a single set of files (documents, code or other important assets) copied to more than one location using a single job. No need to clone a job anymore!
- Multi-Platform: As the system is written in Java, it will work with any machine for which there is a VM (this is true for the backup server and agents). The administration console can be run on either a Linux or Windows machine (when SWT, the GUI framework used for the console matures on OsX, the console will be able to run on that OS as well)
- Volume spanning: If any removable destination is out of space, then it is possible to request the next volume during the backup process. A good example of this is backup to multiple CDs. Plasticine supports both the spanning of single files across multiple media, and also the saving of complete files across different media. In the first case, a large file can be split across two volumes. In the second case, only complete files are written to any volume (obviously, if the file is larger than the size of the volume, it will have to be split up).
- Flexible selection: A single job can backup whatever is deemed important to the user. The files to backup are specified by rules, which can be as simple as include everything, and complex as include all word documents, all excel spreadsheets under my docs directory, and everything NOT ending in .bak under the data directory
- Flexible scheduler: Jobs can be run whenever you like. The current scheduling implementation takes on a form very similar to Cron, but other implementations are easily added. The important point here is that the process of deciding when a backup should be run is completely separated from anything else about the backup job. This is a change from DataArmour, where the scheduling (specifically, the weekly incremental backup job scheduling) is fixed to run on a Monday, with a full backup occurring every week. In Plasticine, user defined schedules are possible.
- Statistics: The system emits various statistics while in operation, including current progress of various jobs, jobs in the run queue, current load, and recent logged events.
Enterprise
- Reliable:The remote agents are resilient to network failure. If a server cannot be contacted, they will move into a discovery mode until the server is back up. No configuration is required!
- Painless installation: The system is very easy to install - just run the included windows installer and tell it what kind of install you want. All services are configured automatically.
- Administration Console: The backup server is a separate process, which is administered via a GUI console. The console can be run from any machine, and can control and manage the settings for the backup server and any client. That means you can configure everything from one place.
Enhancements:
- This release added an option to specify that the destination location should be deleted prior to the backup occuring.
- It also added an option to copy full folders and specify whether or not to create an absolute or relative backup.
- Completion was sped up by detaching the email sending from the job completion process.
- Warnings are now used to log more in the reports for situations that are not necessarily fatal.
- When adding a source or destination, the file browser is now automatically opened for you.
- It is now possible to have multiple email recipients for a backup report.
Download (13.2MB)
Added: 2005-12-17 License: Freeware Price:
1406 downloads
jPOS 1.6.0
jPOS is a Java based, production grade ISO-8583 library. more>>
jPOS project is a Java based, production grade ISO-8583 library/framework that can be used to implement financial interchanges, protocol converters, payment gateways, credit card verification clients and servers (merchant/issuer/acquirer), etc.
Enhancements:
- Upgrade to jdom-1.0.jar
- Changed LogEvent to support new jdom version
- Upgraded build system (uses jPOS-EEs approach
- Added DailyLogListener
- Use crimson instead of xerces
- Created compat_1_5_2 module
- Upgraded jdbm to 1.0
- transient:* and persistent:* Spaces urns now maps to TSpace and JDBMSpace
- ISOMsg writeExternal and readExternal now honors packager if available
- ISOMsg.set(int,String) can be used for ISOBinaryFields provided theres a packager associated with the ISOMsg (the string is interpreted as hex)
- Added appropriate thread names
- TransactionManager stuff moved to its own module txnmgr
- BaseChannel.disconnect closes socket before closing streams (better SSL behaveour)
- ISOServer do not drop connection on VetoException
- bugfix in Log4JListener (if watch=0 use default watch to avoid CPU going up to 100%
- TSpace and JDBMSpace throws NPE at out time if either key or value are null
- ISOCurrencys data moved to a ResourceBundle
- Dump hexstring of binary fields in ISOBasePackager.unpack
- Added IFE_AMOUNT
- Added TransactionManager debug property
- TransactionManager creates default persistent-space if one is not specified
- TransactionManager honors participants configured after group selectors
- TransactionManager now support RETRY action at prepare time (r2359)
- QServer.stop - avoid npe on unstarted/misconfigured servers (r2360)
- ISOChannelPanel now supports wipe and protect attributes (r2363)
- Added IFE_SIGNED_NUMERIC and SignedEbcdicNumberInterpreter
- Added sendKeepAlive() method to BaseChannel
- New ?keep-alive? element in ChannelAdaptor
- FSDMsg trunk fields bigger than length
- Reworked 3rd bitmap support
- QMUX now support multiple ready indicators
- NPE in Q2 startup when deploy directory is not available/readable
- ISOServer now honors new keep-channels property (true|false)
- Added bind-address and backlog properties to ISOServer
- ISOServer: close ThreadPool on shutdown
- FSDMsg truncate A fields larger than length
- synchronized NameRegistrar
- GenericSubFieldPackager - pack dummy fields if field is not available and inner message has no bitmap
- QMUX now supports new .. configuration element (defaults to 41, 11 ).
- Added org.jpos.transaction.participant.HasEntry general purpose Group Selector
- TransactionManager attempts to call setTransactionManager(TransactionManager) on participants
- Bugfix in IF_TCHAR (unpack offset - r2410)
- Added Q2.shutdown (boolean join) (r2414)
- Added Join participant (r2416)
- Added keep-alive property to BaseChannel (r2417) - feature request #404
- Include a call to tx & rx.interrupt so that an idle ISOMUX will honour terminate requests.
- added setOverrideHeader(boolean) and isOverrideHeader() to BaseChannel
- ISOUtil.normalize uses UTF-8 encoding
- BaseChannel: added protected int getHeaderLength(ISOMsg m)
- TransactionManager.stop() wait (via join) for sessions to terminate (r2422)
- ISOServer/ThreadPool: Added socket closure in the event of ThreadPool exhaustion. Combined with a tightening of count of active, working and available Threads in ThreadPool itself (r2423).
- Added IFA_LLLLLLCHAR field packager (r2424)
- Bugfix in DailyTaskAdaptor in order to deal with daylight saving change (r2425)
- XMLPackager honors optional ... element at unpack time. (r2426)
- bugfix in ChannelAdaptor: honor reconnect delay on peer-disconnect exceptions (r2429)
- Added new configuration element to QMUX (r2432)
- genericpackager.dtd - added optional firstField element to fieldpackager and isofieldpackager (r2434)
- QMUX added removeISORequestListener (r2435)
- IFB_LLLHCHAR, IFB_LLLHECHAR and IFB_LLLHBINARY length can go up to 65535 (r2437)
- ISOBasePackager - add support for composite MTIs (r2438)
- BaseChannel accepts new max-packet-length optional property - new default size 100k (r2441)
- bugfix: ISOServer clones max-packet-length
- Added new MUXPool component (r2443)
- TransactionManager minor optimization - do not take snapshot if psp is not actually persistent (r2444)
- SpaceUtil new wipeAndOut helpers (r2447)
- TransactionManager - new PAUSE support (r2448)
- bugfix: GZipChannel compressed/uncompressed length (r2458)
- TransactionManager new method getOutstandingTransactions (r2459)
- added org.jpos.transaction.participant.Forward (r2459)
- added org.jpos.transaction.participant.CheckPoint (r2460)
- QFactory.properties added txnmgr and transaction-manager aliases (r2462)
<<lessEnhancements:
- Upgrade to jdom-1.0.jar
- Changed LogEvent to support new jdom version
- Upgraded build system (uses jPOS-EEs approach
- Added DailyLogListener
- Use crimson instead of xerces
- Created compat_1_5_2 module
- Upgraded jdbm to 1.0
- transient:* and persistent:* Spaces urns now maps to TSpace and JDBMSpace
- ISOMsg writeExternal and readExternal now honors packager if available
- ISOMsg.set(int,String) can be used for ISOBinaryFields provided theres a packager associated with the ISOMsg (the string is interpreted as hex)
- Added appropriate thread names
- TransactionManager stuff moved to its own module txnmgr
- BaseChannel.disconnect closes socket before closing streams (better SSL behaveour)
- ISOServer do not drop connection on VetoException
- bugfix in Log4JListener (if watch=0 use default watch to avoid CPU going up to 100%
- TSpace and JDBMSpace throws NPE at out time if either key or value are null
- ISOCurrencys data moved to a ResourceBundle
- Dump hexstring of binary fields in ISOBasePackager.unpack
- Added IFE_AMOUNT
- Added TransactionManager debug property
- TransactionManager creates default persistent-space if one is not specified
- TransactionManager honors participants configured after group selectors
- TransactionManager now support RETRY action at prepare time (r2359)
- QServer.stop - avoid npe on unstarted/misconfigured servers (r2360)
- ISOChannelPanel now supports wipe and protect attributes (r2363)
- Added IFE_SIGNED_NUMERIC and SignedEbcdicNumberInterpreter
- Added sendKeepAlive() method to BaseChannel
- New ?keep-alive? element in ChannelAdaptor
- FSDMsg trunk fields bigger than length
- Reworked 3rd bitmap support
- QMUX now support multiple ready indicators
- NPE in Q2 startup when deploy directory is not available/readable
- ISOServer now honors new keep-channels property (true|false)
- Added bind-address and backlog properties to ISOServer
- ISOServer: close ThreadPool on shutdown
- FSDMsg truncate A fields larger than length
- synchronized NameRegistrar
- GenericSubFieldPackager - pack dummy fields if field is not available and inner message has no bitmap
- QMUX now supports new .. configuration element (defaults to 41, 11 ).
- Added org.jpos.transaction.participant.HasEntry general purpose Group Selector
- TransactionManager attempts to call setTransactionManager(TransactionManager) on participants
- Bugfix in IF_TCHAR (unpack offset - r2410)
- Added Q2.shutdown (boolean join) (r2414)
- Added Join participant (r2416)
- Added keep-alive property to BaseChannel (r2417) - feature request #404
- Include a call to tx & rx.interrupt so that an idle ISOMUX will honour terminate requests.
- added setOverrideHeader(boolean) and isOverrideHeader() to BaseChannel
- ISOUtil.normalize uses UTF-8 encoding
- BaseChannel: added protected int getHeaderLength(ISOMsg m)
- TransactionManager.stop() wait (via join) for sessions to terminate (r2422)
- ISOServer/ThreadPool: Added socket closure in the event of ThreadPool exhaustion. Combined with a tightening of count of active, working and available Threads in ThreadPool itself (r2423).
- Added IFA_LLLLLLCHAR field packager (r2424)
- Bugfix in DailyTaskAdaptor in order to deal with daylight saving change (r2425)
- XMLPackager honors optional ... element at unpack time. (r2426)
- bugfix in ChannelAdaptor: honor reconnect delay on peer-disconnect exceptions (r2429)
- Added new configuration element to QMUX (r2432)
- genericpackager.dtd - added optional firstField element to fieldpackager and isofieldpackager (r2434)
- QMUX added removeISORequestListener (r2435)
- IFB_LLLHCHAR, IFB_LLLHECHAR and IFB_LLLHBINARY length can go up to 65535 (r2437)
- ISOBasePackager - add support for composite MTIs (r2438)
- BaseChannel accepts new max-packet-length optional property - new default size 100k (r2441)
- bugfix: ISOServer clones max-packet-length
- Added new MUXPool component (r2443)
- TransactionManager minor optimization - do not take snapshot if psp is not actually persistent (r2444)
- SpaceUtil new wipeAndOut helpers (r2447)
- TransactionManager - new PAUSE support (r2448)
- bugfix: GZipChannel compressed/uncompressed length (r2458)
- TransactionManager new method getOutstandingTransactions (r2459)
- added org.jpos.transaction.participant.Forward (r2459)
- added org.jpos.transaction.participant.CheckPoint (r2460)
- QFactory.properties added txnmgr and transaction-manager aliases (r2462)
Download (3.4MB)
Added: 2007-04-21 License: The Apache License Price:
940 downloads
B::OptreeShortestPath 0.02
B::OptreeShortestPath adds the methods ->shortest_path( $op ) and ->all_paths() to all B::OP objects in an optree. more>>
B::OptreeShortestPath is a Perl module that adds the methods ->shortest_path( $op ) and ->all_paths() to all B::OP objects in an optree.
SYNOPSIS
use B qw( main_root main_start );
use B::OptreeShortestPath;
for ( main_start()->shortest_path( main_root() ) ) {
print "$_n";
}
METHODS
$op->shortest_path( $other_op )
Returns a list of the shortest paths from $op to $other_op. Each path is a string approximating a bunch of chained method calls.
"->next->sibling->next",
"->sibling->sibling->next"
$op->all_paths()
Returns a list of paths from this node to all other nodes.
<<lessSYNOPSIS
use B qw( main_root main_start );
use B::OptreeShortestPath;
for ( main_start()->shortest_path( main_root() ) ) {
print "$_n";
}
METHODS
$op->shortest_path( $other_op )
Returns a list of the shortest paths from $op to $other_op. Each path is a string approximating a bunch of chained method calls.
"->next->sibling->next",
"->sibling->sibling->next"
$op->all_paths()
Returns a list of paths from this node to all other nodes.
Download (0.004MB)
Added: 2007-06-25 License: Perl Artistic License Price:
851 downloads
B-Chat 0.13
B-Chat is a small application which allows you to chat on Battle.net. more>>
B-Chat is a small application which allows you to chat on Battle.net.
It has no fancy GUI interface (yet :-), but I have plans for making it Gnome compliant.
However, at the moment it works pretty much like the regular UNIX telnet client, with the lines that are being sent and received mixed into eachother.
It can make it hard to read at times, but it serves my purpose.
I started work on this client because I wanted a way to chat with my friends on Battle.net while I was on Linux.
I really didnt feel like rebooting to Windows just to run TopazChat or ScumBot (I dont like Wine either :-), so I decided to code my own chat client.
The client is still in its early stages, so its very rough and may be hard to use. You have to supply the name o the Battle.net server that you are going to be connecting to. This will change in the future.
<<lessIt has no fancy GUI interface (yet :-), but I have plans for making it Gnome compliant.
However, at the moment it works pretty much like the regular UNIX telnet client, with the lines that are being sent and received mixed into eachother.
It can make it hard to read at times, but it serves my purpose.
I started work on this client because I wanted a way to chat with my friends on Battle.net while I was on Linux.
I really didnt feel like rebooting to Windows just to run TopazChat or ScumBot (I dont like Wine either :-), so I decided to code my own chat client.
The client is still in its early stages, so its very rough and may be hard to use. You have to supply the name o the Battle.net server that you are going to be connecting to. This will change in the future.
Download (0.006MB)
Added: 2006-09-20 License: GPL (GNU General Public License) Price:
1143 downloads
B::CC 5.8.8
B::CC is Perl compilers optimized C translation backend. more>>
B::CC is Perl compilers optimized C translation backend.
SYNOPSIS
perl -MO=CC[,OPTIONS] foo.pl
This compiler backend takes Perl source and generates C source code corresponding to the flow of your program. In other words, this backend is somewhat a "real" compiler in the sense that many people think about compilers. Note however that, currently, it is a very poor compiler in that although it generates (mostly, or at least sometimes) correct code, it performs relatively few optimisations. This will change as the compiler develops. The result is that running an executable compiled with this backend may start up more quickly than running the original Perl program (a feature shared by the C compiler backend--see B::C) and may also execute slightly faster. This is by no means a good optimising compiler--yet.
OPTIONS
If there are any non-option arguments, they are taken to be names of objects to be saved (probably doesnt work properly yet). Without extra arguments, it saves the main program.
-ofilename
Output to filename instead of STDOUT
-v
Verbose compilation (currently gives a few compilation statistics).
--
Force end of options
-uPackname
Force apparently unused subs from package Packname to be compiled. This allows programs to use eval "foo()" even when sub foo is never seen to be used at compile time. The down side is that any subs which really are never used also have code generated. This option is necessary, for example, if you have a signal handler foo which you initialise with $SIG{BAR} = "foo". A better fix, though, is just to change it to $SIG{BAR} = &foo. You can have multiple -u options. The compiler tries to figure out which packages may possibly have subs in which need compiling but the current version doesnt do it very well. In particular, it is confused by nested packages (i.e. of the form A::B) where package A does not contain any subs.
-mModulename
Instead of generating source for a runnable executable, generate source for an XSUB module. The boot_Modulename function (which DynaLoader can look for) does the appropriate initialisation and runs the main part of the Perl source that is being compiled.
-D
Debug options (concatenated or separate flags like perl -D).
-Dr
Writes debugging output to STDERR just as its about to write to the programs runtime (otherwise writes debugging info as comments in its C output).
-DO
Outputs each OP as its compiled
-Ds
Outputs the contents of the shadow stack at each OP
-Dp
Outputs the contents of the shadow pad of lexicals as its loaded for each sub or the main program.
-Dq
Outputs the name of each fake PP function in the queue as its about to process it.
-Dl
Output the filename and line number of each original line of Perl code as its processed (pp_nextstate).
-Dt
Outputs timing information of compilation stages.
-f
Force optimisations on or off one at a time.
-ffreetmps-each-bblock
Delays FREETMPS from the end of each statement to the end of the each basic block.
-ffreetmps-each-loop
Delays FREETMPS from the end of each statement to the end of the group of basic blocks forming a loop. At most one of the freetmps-each-* options can be used.
-fomit-taint
Omits generating code for handling perls tainting mechanism.
-On
Optimisation level (n = 0, 1, 2, ...). -O means -O1. Currently, -O1 sets -ffreetmps-each-bblock and -O2 sets -ffreetmps-each-loop.
<<lessSYNOPSIS
perl -MO=CC[,OPTIONS] foo.pl
This compiler backend takes Perl source and generates C source code corresponding to the flow of your program. In other words, this backend is somewhat a "real" compiler in the sense that many people think about compilers. Note however that, currently, it is a very poor compiler in that although it generates (mostly, or at least sometimes) correct code, it performs relatively few optimisations. This will change as the compiler develops. The result is that running an executable compiled with this backend may start up more quickly than running the original Perl program (a feature shared by the C compiler backend--see B::C) and may also execute slightly faster. This is by no means a good optimising compiler--yet.
OPTIONS
If there are any non-option arguments, they are taken to be names of objects to be saved (probably doesnt work properly yet). Without extra arguments, it saves the main program.
-ofilename
Output to filename instead of STDOUT
-v
Verbose compilation (currently gives a few compilation statistics).
--
Force end of options
-uPackname
Force apparently unused subs from package Packname to be compiled. This allows programs to use eval "foo()" even when sub foo is never seen to be used at compile time. The down side is that any subs which really are never used also have code generated. This option is necessary, for example, if you have a signal handler foo which you initialise with $SIG{BAR} = "foo". A better fix, though, is just to change it to $SIG{BAR} = &foo. You can have multiple -u options. The compiler tries to figure out which packages may possibly have subs in which need compiling but the current version doesnt do it very well. In particular, it is confused by nested packages (i.e. of the form A::B) where package A does not contain any subs.
-mModulename
Instead of generating source for a runnable executable, generate source for an XSUB module. The boot_Modulename function (which DynaLoader can look for) does the appropriate initialisation and runs the main part of the Perl source that is being compiled.
-D
Debug options (concatenated or separate flags like perl -D).
-Dr
Writes debugging output to STDERR just as its about to write to the programs runtime (otherwise writes debugging info as comments in its C output).
-DO
Outputs each OP as its compiled
-Ds
Outputs the contents of the shadow stack at each OP
-Dp
Outputs the contents of the shadow pad of lexicals as its loaded for each sub or the main program.
-Dq
Outputs the name of each fake PP function in the queue as its about to process it.
-Dl
Output the filename and line number of each original line of Perl code as its processed (pp_nextstate).
-Dt
Outputs timing information of compilation stages.
-f
Force optimisations on or off one at a time.
-ffreetmps-each-bblock
Delays FREETMPS from the end of each statement to the end of the each basic block.
-ffreetmps-each-loop
Delays FREETMPS from the end of each statement to the end of the group of basic blocks forming a loop. At most one of the freetmps-each-* options can be used.
-fomit-taint
Omits generating code for handling perls tainting mechanism.
-On
Optimisation level (n = 0, 1, 2, ...). -O means -O1. Currently, -O1 sets -ffreetmps-each-bblock and -O2 sets -ffreetmps-each-loop.
Download (12.2MB)
Added: 2007-06-26 License: Perl Artistic License Price:
855 downloads
B::Tree 0.02
B::Tree is a simplified version of B::Graph for demonstration. more>>
B::Tree is a simplified version of B::Graph for demonstration.
SYNOPSIS
perl -MO=Tree program | dot -Tps > tree.ps
This is a very cut-down version of B::Graph; it generates minimalist tree graphs of the op tree of a Perl program, merely connecting the op nodes and labelling each node with the type of op.
It was written as an example of how to write compiler modules for "Professional Perl", but Ive found it extremely useful for creating simple op tree graphs for use in presentations on Perl internals.
It requires the CPAN GraphViz module and the GraphViz package from http://www.research.att.com/sw/tools/graphviz/. It takes no options.
<<lessSYNOPSIS
perl -MO=Tree program | dot -Tps > tree.ps
This is a very cut-down version of B::Graph; it generates minimalist tree graphs of the op tree of a Perl program, merely connecting the op nodes and labelling each node with the type of op.
It was written as an example of how to write compiler modules for "Professional Perl", but Ive found it extremely useful for creating simple op tree graphs for use in presentations on Perl internals.
It requires the CPAN GraphViz module and the GraphViz package from http://www.research.att.com/sw/tools/graphviz/. It takes no options.
Download (0.002MB)
Added: 2007-06-26 License: Perl Artistic License Price:
856 downloads
B::Lint 1.09
B::Lint module contains Perl lint. more>>
B::Lint module contains Perl lint.
SYNOPSIS
perl -MO=Lint[,OPTIONS] foo.pl
The B::Lint module is equivalent to an extended version of the -w option of perl. It is named after the program lint which carries out a similar process for C programs.
OPTIONS AND LINT CHECKS
Option words are separated by commas (not whitespace) and follow the usual conventions of compiler backend options. Following any options (indicated by a leading -) come lint check arguments. Each such argument (apart from the special all and none options) is a word representing one possible lint check (turning on that check) or is no-foo (turning off that check). Before processing the check arguments, a standard list of checks is turned on. Later options override earlier ones. Available options are:
magic-diamond
Produces a warning whenever the magic readline is used. Internally it uses perls two-argument open which itself treats filenames with special characters specially. This could allow interestingly named files to have unexpected effects when reading.
% touch rm *|
% perl -pe 1
The above creates a file named rm *|. When perl opens it with it actually executes the shell program rm *. This makes dangerous to use carelessly.
context
Produces a warning whenever an array is used in an implicit scalar context. For example, both of the lines
$foo = length(@bar);
$foo = @bar;
will elicit a warning. Using an explicit scalar() silences the warning. For example,
$foo = scalar(@bar);
implicit-read and implicit-write
These options produce a warning whenever an operation implicitly reads or (respectively) writes to one of Perls special variables. For example, implicit-read will warn about these:
/foo/;
and implicit-write will warn about these:
s/foo/bar/;
Both implicit-read and implicit-write warn about this:
for (@a) { ... }
bare-subs
This option warns whenever a bareword is implicitly quoted, but is also the name of a subroutine in the current package. Typical mistakes that it will trap are:
use constant foo => bar;
@a = ( foo => 1 );
$b{foo} = 2;
Neither of these will do what a naive user would expect.
dollar-underscore
This option warns whenever $_ is used either explicitly anywhere or as the implicit argument of a print statement.
private-names
This option warns on each use of any variable, subroutine or method name that lives in a non-current package but begins with an underscore ("_"). Warnings arent issued for the special case of the single character name "_" by itself (e.g. $_ and @_).
undefined-subs
This option warns whenever an undefined subroutine is invoked. This option will only catch explicitly invoked subroutines such as foo() and not indirect invocations such as &$subref() or $obj->meth(). Note that some programs or modules delay definition of subs until runtime by means of the AUTOLOAD mechanism.
regexp-variables
This option warns whenever one of the regexp variables $`, $& or $ is used. Any occurrence of any of these variables in your program can slow your whole program down. See perlre for details.
all
Turn all warnings on.
none
Turn all warnings off.
<<lessSYNOPSIS
perl -MO=Lint[,OPTIONS] foo.pl
The B::Lint module is equivalent to an extended version of the -w option of perl. It is named after the program lint which carries out a similar process for C programs.
OPTIONS AND LINT CHECKS
Option words are separated by commas (not whitespace) and follow the usual conventions of compiler backend options. Following any options (indicated by a leading -) come lint check arguments. Each such argument (apart from the special all and none options) is a word representing one possible lint check (turning on that check) or is no-foo (turning off that check). Before processing the check arguments, a standard list of checks is turned on. Later options override earlier ones. Available options are:
magic-diamond
Produces a warning whenever the magic readline is used. Internally it uses perls two-argument open which itself treats filenames with special characters specially. This could allow interestingly named files to have unexpected effects when reading.
% touch rm *|
% perl -pe 1
The above creates a file named rm *|. When perl opens it with it actually executes the shell program rm *. This makes dangerous to use carelessly.
context
Produces a warning whenever an array is used in an implicit scalar context. For example, both of the lines
$foo = length(@bar);
$foo = @bar;
will elicit a warning. Using an explicit scalar() silences the warning. For example,
$foo = scalar(@bar);
implicit-read and implicit-write
These options produce a warning whenever an operation implicitly reads or (respectively) writes to one of Perls special variables. For example, implicit-read will warn about these:
/foo/;
and implicit-write will warn about these:
s/foo/bar/;
Both implicit-read and implicit-write warn about this:
for (@a) { ... }
bare-subs
This option warns whenever a bareword is implicitly quoted, but is also the name of a subroutine in the current package. Typical mistakes that it will trap are:
use constant foo => bar;
@a = ( foo => 1 );
$b{foo} = 2;
Neither of these will do what a naive user would expect.
dollar-underscore
This option warns whenever $_ is used either explicitly anywhere or as the implicit argument of a print statement.
private-names
This option warns on each use of any variable, subroutine or method name that lives in a non-current package but begins with an underscore ("_"). Warnings arent issued for the special case of the single character name "_" by itself (e.g. $_ and @_).
undefined-subs
This option warns whenever an undefined subroutine is invoked. This option will only catch explicitly invoked subroutines such as foo() and not indirect invocations such as &$subref() or $obj->meth(). Note that some programs or modules delay definition of subs until runtime by means of the AUTOLOAD mechanism.
regexp-variables
This option warns whenever one of the regexp variables $`, $& or $ is used. Any occurrence of any of these variables in your program can slow your whole program down. See perlre for details.
all
Turn all warnings on.
none
Turn all warnings off.
Download (0.017MB)
Added: 2007-06-25 License: Perl Artistic License Price:
852 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above b psp search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed