xmlencoder tutorial
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 246
Derbrill Tutorials
Derbrill Tutorials are Free Tutorials For Writing Games and Multimedia Applications in Runtime Revolution with ArcadeEngine. more>>
Derbrill Tutorials are Free Tutorials For Writing Games and Multimedia Applications in Runtime Revolution with ArcadeEngine.
The tutorials come in a visually appealing e-book format which is both easy to read and use, the range of topics covered includes:
* The basics of Revolution such as: stacks, cards, scripts, messages and timers
* How to use geometric properties such as distances, angles and intersection rectangles
* Understanding and using different movements including linear, polygonal, circular and elliptic
* Advanced use of images
* Using the built-in collision detection
<<lessThe tutorials come in a visually appealing e-book format which is both easy to read and use, the range of topics covered includes:
* The basics of Revolution such as: stacks, cards, scripts, messages and timers
* How to use geometric properties such as distances, angles and intersection rectangles
* Understanding and using different movements including linear, polygonal, circular and elliptic
* Advanced use of images
* Using the built-in collision detection
Download (4.2MB)
Added: 2005-10-17 License: Freeware Price:
1470 downloads
Imager::Tutorial 0.54
Imager::Tutorial is an introduction to Imager. more>>
Imager::Tutorial is an introduction to Imager.
Before you start
If you have the necessary knowledge, install the image format libraries you want Imager image file support for, and Imager itself, otherwise arrange to have it done.
You will also want some sort of image viewer tool, whether an image editor like Photoshop or the GIMP, or a web browser.
Hello Boxes! - A Simple Start
As with any perl program its useful to start with a #! line, and to enable strict mode:
#!/usr/bin/perl -w
# you might to use warnings; instead of the -w above
use strict;
These lines will be omitted in further examples.
As with any module, you need to load it:
use Imager;
Now create a image to draw on:
my $image = Imager->new(xsize => 100, ysize => 100);
and draw a couple of filled rectangles on it:
$image->box(xmin => 0, ymin => 0, xmax => 99, ymax => 99,
filled => 1, color => blue);
$image->box(xmin => 20, ymin => 20, xmax => 79, ymax => 79,
filled => 1, color => green);
Since the first box fills the whole image, it can be simplified to:
$image->box(filled => 1, color => blue);
and save it to a file:
$image->write(file=>tutorial1.ppm)
or die Cannot save tutorial1.ppm: , $image->errstr;
So our completed program is:
use Imager;
my $image = Imager->new(xsize => 100, ysize => 100);
$image->box(filled => 1, color => blue);
$image->box(xmin => 20, ymin => 20, xmax => 79, ymax => 79,
filled => 1, color => green);
$image->write(file=>tutorial1.ppm)
or die Cannot save tutorial1.ppm: , $image->errstr;
<<lessBefore you start
If you have the necessary knowledge, install the image format libraries you want Imager image file support for, and Imager itself, otherwise arrange to have it done.
You will also want some sort of image viewer tool, whether an image editor like Photoshop or the GIMP, or a web browser.
Hello Boxes! - A Simple Start
As with any perl program its useful to start with a #! line, and to enable strict mode:
#!/usr/bin/perl -w
# you might to use warnings; instead of the -w above
use strict;
These lines will be omitted in further examples.
As with any module, you need to load it:
use Imager;
Now create a image to draw on:
my $image = Imager->new(xsize => 100, ysize => 100);
and draw a couple of filled rectangles on it:
$image->box(xmin => 0, ymin => 0, xmax => 99, ymax => 99,
filled => 1, color => blue);
$image->box(xmin => 20, ymin => 20, xmax => 79, ymax => 79,
filled => 1, color => green);
Since the first box fills the whole image, it can be simplified to:
$image->box(filled => 1, color => blue);
and save it to a file:
$image->write(file=>tutorial1.ppm)
or die Cannot save tutorial1.ppm: , $image->errstr;
So our completed program is:
use Imager;
my $image = Imager->new(xsize => 100, ysize => 100);
$image->box(filled => 1, color => blue);
$image->box(xmin => 20, ymin => 20, xmax => 79, ymax => 79,
filled => 1, color => green);
$image->write(file=>tutorial1.ppm)
or die Cannot save tutorial1.ppm: , $image->errstr;
Download (0.83MB)
Added: 2006-10-27 License: Perl Artistic License Price:
1094 downloads
XML::Smart::Tutorial 1.6.9
XML::Smart::Tutorial is a Perl module with tutorials and examples for XML::Smart. more>>
XML::Smart::Tutorial is a Perl module with tutorials and examples for XML::Smart.
SYNOPSIS
This document is a tutorial for XML::Smart and shows some examples of usual things.
<<lessSYNOPSIS
This document is a tutorial for XML::Smart and shows some examples of usual things.
Download (0.049MB)
Added: 2006-09-12 License: GPL (GNU General Public License) Price:
1144 downloads
XML::XQL::Tutorial 0.68
XML::XQL::Tutorial is a Perl module that describes the XQL query syntax. more>>
XML::XQL::Tutorial is a Perl module that describes the XQL query syntax.
This document describes basic the features of the XML Query Language (XQL.) A proposal for the XML Query Language (XQL) specification was submitted to the XSL Working Group in September 1998. The spec can be found at http://www.w3.org/TandS/QL/QL98/pp/xql.html. Since it is only a proposal at this point, things may change, but it is very likely that the final version will be close to the proposal. Most of this document was copied straight from the spec.
See also the XML::XQL man page.
XQL (XML Query Language) provides a natural extension to the XSL pattern language. It builds upon the capabilities XSL provides for identifying classes of nodes, by adding Boolean logic, filters, indexing into collections of nodes, and more.
XQL is designed specifically for XML documents. It is a general purpose query language, providing a single syntax that can be used for queries, addressing, and patterns. XQL is concise, simple, and powerful.
XQL is designed to be used in many contexts. Although it is a superset of XSL patterns, it is also applicable to providing links to nodes, for searching repositories, and for many other applications.
Note that the term XQL is a working term for the language described in this proposal. It is not their intent that this term be used permanently. Also, beware that another query language exists called XML-QL, which uses a syntax very similar to SQL.
The XML::XQL module has added functionality to the XQL spec, called XQL+. To allow only XQL functionality as described in the spec, use the XML::XQL::Strict module. Note that the XQL spec makes the distinction between core XQL and XQL extensions. This implementation makes no distinction and the Strict module, therefore, implements everything described in the XQL spec. See the XML::XQL man page for more information about the Strict module. This tutorial will clearly indicate when referring to XQL+.
<<lessThis document describes basic the features of the XML Query Language (XQL.) A proposal for the XML Query Language (XQL) specification was submitted to the XSL Working Group in September 1998. The spec can be found at http://www.w3.org/TandS/QL/QL98/pp/xql.html. Since it is only a proposal at this point, things may change, but it is very likely that the final version will be close to the proposal. Most of this document was copied straight from the spec.
See also the XML::XQL man page.
XQL (XML Query Language) provides a natural extension to the XSL pattern language. It builds upon the capabilities XSL provides for identifying classes of nodes, by adding Boolean logic, filters, indexing into collections of nodes, and more.
XQL is designed specifically for XML documents. It is a general purpose query language, providing a single syntax that can be used for queries, addressing, and patterns. XQL is concise, simple, and powerful.
XQL is designed to be used in many contexts. Although it is a superset of XSL patterns, it is also applicable to providing links to nodes, for searching repositories, and for many other applications.
Note that the term XQL is a working term for the language described in this proposal. It is not their intent that this term be used permanently. Also, beware that another query language exists called XML-QL, which uses a syntax very similar to SQL.
The XML::XQL module has added functionality to the XQL spec, called XQL+. To allow only XQL functionality as described in the spec, use the XML::XQL::Strict module. Note that the XQL spec makes the distinction between core XQL and XQL extensions. This implementation makes no distinction and the Strict module, therefore, implements everything described in the XQL spec. See the XML::XQL man page for more information about the Strict module. This tutorial will clearly indicate when referring to XQL+.
Download (0.11MB)
Added: 2006-09-20 License: Perl Artistic License Price:
1130 downloads
Games::ScottAdams::Tutorial 0.04
Games::ScottAdams::Tutorial is a Perl module with the Scott Adams Adventure Compiler Tutorial. more>>
Games::ScottAdams::Tutorial is a Perl module with the Scott Adams Adventure Compiler Tutorial.
INTRODUCTION
This document walks you through the process of creating a small but complete and playable game with six rooms, seven items including a single treasure, and a couple of puzzles.
It makes no attempt to be complete: you need the reference manual for that. But by the time youve worked your way through this tutorial you should be familiar with rooms, items, actions and occurrences, and youll be ready to start writing your own games.
<<lessINTRODUCTION
This document walks you through the process of creating a small but complete and playable game with six rooms, seven items including a single treasure, and a couple of puzzles.
It makes no attempt to be complete: you need the reference manual for that. But by the time youve worked your way through this tutorial you should be familiar with rooms, items, actions and occurrences, and youll be ready to start writing your own games.
Download (0.048MB)
Added: 2007-01-04 License: Perl Artistic License Price:
1028 downloads
Sub::Exporter::Tutorial 0.970
Sub::Exporter::Tutorial is a friendly guide to exporting with Sub::Exporter. more>>
Sub::Exporter::Tutorial is a friendly guide to exporting with Sub::Exporter.
Whats an Exporter?
When you use a module, first it is required, then its import method is called. The Perl documentation tells us that the following two lines are equivalent:
use Module LIST;
BEGIN { require Module; Module->import(LIST); }
The import method is the modules exporter.
The Basics of Sub::Exporter
Sub::Exporter builds a custom exporter which can then be installed into your module. It builds this method based on configuration passed to its setup_exporter method.
A very basic use case might look like this:
package Addition;
use Sub::Exporter;
Sub::Exporter::setup_exporter({ exports => [ qw(plus) ]});
sub plus { my ($x, $y) = @_; return $x + $y; }
This would mean that when someone used your Addition module, they could have its plus routine imported into their package:
use Addition qw(plus);
my $z = plus(2, 2); # this works, because now plus is in the main package
That syntax to set up the exporter, above, is a little verbose, so for the simple case of just naming some exports, you can write this:
use Sub::Exporter -setup => { exports => [ qw(plus) ] };
...which is the same as the original example -- except that now the exporter is built and installed at compile time. Well, that and you typed less.
Using Export Groups
You can specify whole groups of things that should be exportable together. These are called groups. Exporter calls these tags. To specify groups, you just pass a groups key in your exporter configuration:
package Food;
use Sub::Exporter -setup => {
exports => [ qw(apple banana beef fluff lox rabbit) ],
groups => {
fauna => [ qw(beef lox rabbit) ],
flora => [ qw(apple banana) ],
}
};
Now, to import all that delicious foreign meat, your consumer needs only to write:
use Food qw(:fauna);
use Food qw(-fauna);
Either one of the above is acceptable. A colon is more traditional, but barewords with a leading colon cant be enquoted by a fat arrow. Well see why that matters later on.
Groups can contain other groups. If you include a group name (with the leading dash or colon) in a group definition, it will be expanded recursively when the exporter is called. The exporter will not recurse into the same group twice while expanding groups.
There are two special groups: all and default. The all group is defined by default, and contains all exportable subs. You can redefine it, if you want to export only a subset when all exports are requested. The default group is the set of routines to export when nothing specific is requested. By default, there is no default group.
<<lessWhats an Exporter?
When you use a module, first it is required, then its import method is called. The Perl documentation tells us that the following two lines are equivalent:
use Module LIST;
BEGIN { require Module; Module->import(LIST); }
The import method is the modules exporter.
The Basics of Sub::Exporter
Sub::Exporter builds a custom exporter which can then be installed into your module. It builds this method based on configuration passed to its setup_exporter method.
A very basic use case might look like this:
package Addition;
use Sub::Exporter;
Sub::Exporter::setup_exporter({ exports => [ qw(plus) ]});
sub plus { my ($x, $y) = @_; return $x + $y; }
This would mean that when someone used your Addition module, they could have its plus routine imported into their package:
use Addition qw(plus);
my $z = plus(2, 2); # this works, because now plus is in the main package
That syntax to set up the exporter, above, is a little verbose, so for the simple case of just naming some exports, you can write this:
use Sub::Exporter -setup => { exports => [ qw(plus) ] };
...which is the same as the original example -- except that now the exporter is built and installed at compile time. Well, that and you typed less.
Using Export Groups
You can specify whole groups of things that should be exportable together. These are called groups. Exporter calls these tags. To specify groups, you just pass a groups key in your exporter configuration:
package Food;
use Sub::Exporter -setup => {
exports => [ qw(apple banana beef fluff lox rabbit) ],
groups => {
fauna => [ qw(beef lox rabbit) ],
flora => [ qw(apple banana) ],
}
};
Now, to import all that delicious foreign meat, your consumer needs only to write:
use Food qw(:fauna);
use Food qw(-fauna);
Either one of the above is acceptable. A colon is more traditional, but barewords with a leading colon cant be enquoted by a fat arrow. Well see why that matters later on.
Groups can contain other groups. If you include a group name (with the leading dash or colon) in a group definition, it will be expanded recursively when the exporter is called. The exporter will not recurse into the same group twice while expanding groups.
There are two special groups: all and default. The all group is defined by default, and contains all exportable subs. You can redefine it, if you want to export only a subset when all exports are requested. The default group is the set of routines to export when nothing specific is requested. By default, there is no default group.
Download (0.034MB)
Added: 2006-10-16 License: Perl Artistic License Price:
1104 downloads
Apache::PAR::tutorial 0.30
Apache::PAR::tutorial is a Perl module with information on getting Apache::PAR up and running. more>>
Apache::PAR::tutorial is a Perl module with information on getting Apache::PAR up and running.
Apache::PAR is a framework for including Perl ARchive files in a mod_perl (1.x or 2.x) environment. It allows an author to package up a web application, including configuration, static files, Perl modules, and Registry and PerlRun scripts to include in a single file. This archive can then be moved to other locations on the same system or distributed and loaded with a single set of configuration options in the Apache configuration.
These modules are based on PAR.pm by Autrijus Tang and Archive::Zip by Ned Konz as well as the mod_perl modules. They extend the concept of PAR files to mod_perl, similar to how WAR archives work for Java. An archive (which is really a zip file), contains one or more elements which can be served to clients making requests to an Apache web server. Scripts, modules, and static content should then be able to be served from within the .par archive without modifications.
For the package developer
For the package developer, Apache::PAR allows for easy package management, which frees the author from the task of creating a full Perl package. Apache::PAR allows the package developer to set the required Apache configuration directly in a package which greatly simplifies the install process for the end user and gives the the developer the ability to assign URLs which remain the same on all systems that the package is installed on. It is possible to decompress the contents of the PAR file during startup, which allows the use of code which relies on outside content (templating systems, etc)
For the package user
Once Apache::PAR is installed, it can be configured in an Apache configuration file with as little as two lines. Once setup, to add a new .par package to the system a user only has to place the package in the directory specified in the Apache configuration and restart Apache. All other configuration needs are provided by the module itself.
<<lessApache::PAR is a framework for including Perl ARchive files in a mod_perl (1.x or 2.x) environment. It allows an author to package up a web application, including configuration, static files, Perl modules, and Registry and PerlRun scripts to include in a single file. This archive can then be moved to other locations on the same system or distributed and loaded with a single set of configuration options in the Apache configuration.
These modules are based on PAR.pm by Autrijus Tang and Archive::Zip by Ned Konz as well as the mod_perl modules. They extend the concept of PAR files to mod_perl, similar to how WAR archives work for Java. An archive (which is really a zip file), contains one or more elements which can be served to clients making requests to an Apache web server. Scripts, modules, and static content should then be able to be served from within the .par archive without modifications.
For the package developer
For the package developer, Apache::PAR allows for easy package management, which frees the author from the task of creating a full Perl package. Apache::PAR allows the package developer to set the required Apache configuration directly in a package which greatly simplifies the install process for the end user and gives the the developer the ability to assign URLs which remain the same on all systems that the package is installed on. It is possible to decompress the contents of the PAR file during startup, which allows the use of code which relies on outside content (templating systems, etc)
For the package user
Once Apache::PAR is installed, it can be configured in an Apache configuration file with as little as two lines. Once setup, to add a new .par package to the system a user only has to place the package in the directory specified in the Apache configuration and restart Apache. All other configuration needs are provided by the module itself.
Download (0.025MB)
Added: 2006-10-12 License: Perl Artistic License Price:
1107 downloads
Tkx::Tutorial 1.04
Tkx::Tutorial Perl module contains a tutorial about how to use Tkx. more>>
Tkx::Tutorial Perl module contains a tutorial about how to use Tkx.
Tk is a toolkit that allows you to create applications with graphical interfaces for Windows, Mac OS X and X11. The Tk toolkit is native to the Tcl programming language, but its ease of use and cross-platform availability has made it the GUI toolkit of choice for many other dynamic languages as well.
Tkx is a Perl module that makes the Tk toolkit available to Perl programs. By loading the Tkx module Perl programs can create windows and fill them with text, images, buttons and other controls that make up the user interface of the application.
Hello World
Lets start with the mandatory exercise of creating an application that greats the world. Here we make the application window contain a single button which will shut down the application if clicked. The code to make this happen is:
use Tkx;
Tkx::button(".b",
-text => "Hello, world",
-command => sub { Tkx::destroy("."); },
);
Tkx::pack(".b");
Tkx::MainLoop()
Save this to a file called hello.pl and then run perl hello.pl to start up the application. A window with the text "Hello, world" should appear on your screen.
After the Tkx module has been loaded by the use Tkx statement the application will show an empty window called ".". We create a button with the name ".b" and tell the window to display the button with the call to Tkx::pack(). After the layout of the window has been set up we need to pass control back to Tk so that it can draw the window and invoke our callback if the button is clicked. This is achieved by the Tkx::MainLoop() call at the end. Clicking the button will invoke the subroutine registered with the -command option of the button. In this case the callback simply destroys the window, which in turn will terminate the application.
<<lessTk is a toolkit that allows you to create applications with graphical interfaces for Windows, Mac OS X and X11. The Tk toolkit is native to the Tcl programming language, but its ease of use and cross-platform availability has made it the GUI toolkit of choice for many other dynamic languages as well.
Tkx is a Perl module that makes the Tk toolkit available to Perl programs. By loading the Tkx module Perl programs can create windows and fill them with text, images, buttons and other controls that make up the user interface of the application.
Hello World
Lets start with the mandatory exercise of creating an application that greats the world. Here we make the application window contain a single button which will shut down the application if clicked. The code to make this happen is:
use Tkx;
Tkx::button(".b",
-text => "Hello, world",
-command => sub { Tkx::destroy("."); },
);
Tkx::pack(".b");
Tkx::MainLoop()
Save this to a file called hello.pl and then run perl hello.pl to start up the application. A window with the text "Hello, world" should appear on your screen.
After the Tkx module has been loaded by the use Tkx statement the application will show an empty window called ".". We create a button with the name ".b" and tell the window to display the button with the call to Tkx::pack(). After the layout of the window has been set up we need to pass control back to Tk so that it can draw the window and invoke our callback if the button is clicked. This is achieved by the Tkx::MainLoop() call at the end. Clicking the button will invoke the subroutine registered with the -command option of the button. In this case the callback simply destroys the window, which in turn will terminate the application.
Download (0.024MB)
Added: 2007-07-21 License: Perl Artistic License Price:
836 downloads
Template::Tutorial 2.15
Template::Tutorial are template toolkit tutorials. more>>
Template::Tutorial are template toolkit tutorials.
This section includes tutorials on using the Template Toolkit. Subjects currently include an general overview of the Template Toolkit, showing users how to get quickly up to speed building web content, and a tutorial on generating and using data files, with particular reference to XML.
Template::Tutorial::Web
Generating Web Content Using the Template Toolkit
This tutorial provides an introduction to the Template Toolkit and a "quick start" guide to getting up to speed. Its primarily focus is on using the Template Toolkit to build web content and it covers 4 basic areas: using tpage and ttree; using the Template.pm module in CGI scripts; writing Apache/mod_perl handlers; and extending the toolkit by writing plugins.
Template::Tutorial::Datafile
Creating Data Output Files Using the Template Toolkit
This tutorial gives an overview of the Template Toolkit, showing in particular how to use it to read and write data files in various different formats and styles. It was written by Dave Cross and first appeared as a lead article at http://www.perl.com/ earlier in the year (2001).
<<lessThis section includes tutorials on using the Template Toolkit. Subjects currently include an general overview of the Template Toolkit, showing users how to get quickly up to speed building web content, and a tutorial on generating and using data files, with particular reference to XML.
Template::Tutorial::Web
Generating Web Content Using the Template Toolkit
This tutorial provides an introduction to the Template Toolkit and a "quick start" guide to getting up to speed. Its primarily focus is on using the Template Toolkit to build web content and it covers 4 basic areas: using tpage and ttree; using the Template.pm module in CGI scripts; writing Apache/mod_perl handlers; and extending the toolkit by writing plugins.
Template::Tutorial::Datafile
Creating Data Output Files Using the Template Toolkit
This tutorial gives an overview of the Template Toolkit, showing in particular how to use it to read and write data files in various different formats and styles. It was written by Dave Cross and first appeared as a lead article at http://www.perl.com/ earlier in the year (2001).
Download (0.76MB)
Added: 2006-10-16 License: Perl Artistic License Price:
1107 downloads
IPTables-tutorial 1.2.2
IPTables-tutorials aim is to explain iptables in a complete and simple way. more>>
IPTables-tutorials aim is to explain iptables in a complete and simple way. The iptables-tutorial is currently rather stable, and contains information on all the currently available matches and targets (in kernel), as well as a couple of complete example scripts and explanations. It contains a complete section on iptables syntax, as well as other interesting commands such as iptables-save and iptables-restore.
The tutorial has recently been under heavy scrutiny and updating, as can be seen in this, the latest version of the tutorial. It is now also available in bookform from Lulu.com. If you feel like contributing or donating to the author of this tutorial, please do buy the book! Thank you!
If you need help, you are better off by asking the netfilter mailing list which you can reach at netfilter at lists.netfilter.org. For more information on this, visit the netfilter mailinglist page. You may also contact the linuxsecurity mailing list at security-discuss AT linuxsecurity dotcom. Both are fairly large, and should be able to help you much much better than I can.
<<lessThe tutorial has recently been under heavy scrutiny and updating, as can be seen in this, the latest version of the tutorial. It is now also available in bookform from Lulu.com. If you feel like contributing or donating to the author of this tutorial, please do buy the book! Thank you!
If you need help, you are better off by asking the netfilter mailing list which you can reach at netfilter at lists.netfilter.org. For more information on this, visit the netfilter mailinglist page. You may also contact the linuxsecurity mailing list at security-discuss AT linuxsecurity dotcom. Both are fairly large, and should be able to help you much much better than I can.
Download (9.0MB)
Added: 2006-11-22 License: (FDL) GNU Free Documentation License Price:
669 downloads
PAR::Tutorial 0.941
PAR::Tutorial is a cross-platform Packaging and Deployment with PAR. more>>
PAR::Tutorial is a cross-platform Packaging and Deployment with PAR.
SYNOPSIS
This is a tutorial on PAR, first appeared at the 7th Perl Conference. The HTML version of this tutorial is available online as http://aut.dyndns.org/par-tutorial/.
On Deploying Perl Applications
% sshnuke.pl 10.2.2.2 -rootpw="Z1ON0101"
Perl v5.6.1 required--this is only v5.6.0, stopped at sshnuke.pl line 1.
BEGIN failed--compilation aborted at sshnuke.pl line 1.
Q: "Help! I cant run your program!"
A1: Install Perl & perl -MCPAN -einstall(...)
How do we know which modules are needed?
New versions of CPAN modules may break sshnuke.pl
A2: Install Perl & tar zxf my_perllib.tgz
Possibly overwriting existing modules; not cross-platform at all
A3: Use the executable generated by perlcc sshnuke.pl
Impossible to debug; perlcc usually does not work anyway
<<lessSYNOPSIS
This is a tutorial on PAR, first appeared at the 7th Perl Conference. The HTML version of this tutorial is available online as http://aut.dyndns.org/par-tutorial/.
On Deploying Perl Applications
% sshnuke.pl 10.2.2.2 -rootpw="Z1ON0101"
Perl v5.6.1 required--this is only v5.6.0, stopped at sshnuke.pl line 1.
BEGIN failed--compilation aborted at sshnuke.pl line 1.
Q: "Help! I cant run your program!"
A1: Install Perl & perl -MCPAN -einstall(...)
How do we know which modules are needed?
New versions of CPAN modules may break sshnuke.pl
A2: Install Perl & tar zxf my_perllib.tgz
Possibly overwriting existing modules; not cross-platform at all
A3: Use the executable generated by perlcc sshnuke.pl
Impossible to debug; perlcc usually does not work anyway
Download (0.19MB)
Added: 2006-07-20 License: Perl Artistic License Price:
1194 downloads
MARC::Doc::Tutorial 2.00
MARC::Doc::Tutorial is a documentation-only module for new users of MARC::Record. more>>
MARC::Doc::Tutorial is a documentation-only module for new users of MARC::Record.
SYNOPSIS
perldoc MARC::Doc::Tutorial
What is MARC?
The MAchine Readable Cataloging format was designed by the Library of Congress in the late 1960s in order to allow libraries to convert their card catalogs into a digital format. The advantages of having computerized card catalogs were soon realized, and now MARC is being used by all sorts of libraries around the world to provide computerized access to their collections. MARC data in transmission format is optimized for processing by computers, so its not very readable for the normal human. For more about the MARC format, visit the Library of Congress at http://www.loc.gov/marc/
What is this Tutorial?
The document you are reading is a beginners guide to using Perl to processing MARC data, written in the cookbook style. Inside, you will find recipes on how to read, write, update and convert MARC data using the MARC::Record CPAN package. As with any cookbook, you should feel free to dip in at any section and use the recipe you find interesting.
If you are new to Perl, you may want to read from the beginning.
The document you are reading is distributed with the MARC::Record package, however in case you are reading it somewhere else, you can find the latest version at CPAN: http://www.cpan.org/modules/by-module/MARC/. Youll notice that some sections arent filled in yet, which is a result of this document being a work in progress. If you have ideas for new sections please make a suggestion to perl4lib: http://www.rice.edu/perl4lib/.
<<lessSYNOPSIS
perldoc MARC::Doc::Tutorial
What is MARC?
The MAchine Readable Cataloging format was designed by the Library of Congress in the late 1960s in order to allow libraries to convert their card catalogs into a digital format. The advantages of having computerized card catalogs were soon realized, and now MARC is being used by all sorts of libraries around the world to provide computerized access to their collections. MARC data in transmission format is optimized for processing by computers, so its not very readable for the normal human. For more about the MARC format, visit the Library of Congress at http://www.loc.gov/marc/
What is this Tutorial?
The document you are reading is a beginners guide to using Perl to processing MARC data, written in the cookbook style. Inside, you will find recipes on how to read, write, update and convert MARC data using the MARC::Record CPAN package. As with any cookbook, you should feel free to dip in at any section and use the recipe you find interesting.
If you are new to Perl, you may want to read from the beginning.
The document you are reading is distributed with the MARC::Record package, however in case you are reading it somewhere else, you can find the latest version at CPAN: http://www.cpan.org/modules/by-module/MARC/. Youll notice that some sections arent filled in yet, which is a result of this document being a work in progress. If you have ideas for new sections please make a suggestion to perl4lib: http://www.rice.edu/perl4lib/.
Download (0.77MB)
Added: 2007-07-10 License: GPL (GNU General Public License) Price:
836 downloads
Prima::tutorial 1.20
Prima::tutorial is an introductory tutorial. more>>
Prima::tutorial is an introductory tutorial.
Programming graphic interfaces is often considered somewhat boring, and not without a cause. It is a small pride in knowing that your buttons and scrollbars work exactly as millions of others buttons and scrollbars do, so whichever GUI toolkit is chosen, it is usually regarded as a tool of small importance, and the less obtrusive, the better.
Given that, and trying to live up to the famous Perl making easy things easy and hard things possible mantra, this manual page is an introductory tutorial meant to show how to write easy things easy. The hard things are explained in the other Prima manual pages ( see Prima ).
<<lessProgramming graphic interfaces is often considered somewhat boring, and not without a cause. It is a small pride in knowing that your buttons and scrollbars work exactly as millions of others buttons and scrollbars do, so whichever GUI toolkit is chosen, it is usually regarded as a tool of small importance, and the less obtrusive, the better.
Given that, and trying to live up to the famous Perl making easy things easy and hard things possible mantra, this manual page is an introductory tutorial meant to show how to write easy things easy. The hard things are explained in the other Prima manual pages ( see Prima ).
Download (1.4MB)
Added: 2006-08-24 License: Perl Artistic License Price:
1162 downloads
Album::Tutorial 1.05
Album::Tutorial is a Perl module on how to use the Album program. more>>
Album::Tutorial is a Perl module on how to use the Album program.
SYNOPSIS
This tutorial describes the basic use of the Album program to create and maintain browser based photo albums.
Getting started
To get started, create a new directory and cd to it. Create a subdirectory large and put some pictures there. If you have installed the album tool in your execution path, you can now execute it as follows:
$ album -v
No info.dat, adding images from large
info.dat: Cannot update (does not exist)
Number of entries = 7 (7 added)
mkdir thumbnails
mkdir icons
mkdir css
Creating icons: first-gr.png first.png ... sound.png movie.jpg
Creating style sheets: common.css index.css ... journal.css
im023.jpg: thumbnail OK
im024.jpg: thumbnail OK
im025.jpg: thumbnail OK
im026.jpg: thumbnail OK
im027.jpg: thumbnail OK
im028.jpg: thumbnail OK
im029.jpg: thumbnail OK
Creating pages for 7 images
(Needed to write 7 image pages)
Creating pages for 1 index
(Needed to write 1 index page)
Your results will vary, but be similar to this example run. What you can see is that album found 7 images in the large directory, created thumbnails, icons and css directories, created thumbnails by resizing the images, and finally created the HTML pages. You can inspect your first photo album by opening file index.html with your favorite browser. You can click on any image to see the larger version. Navigation buttons are provided to the left of the image.
It is interesting to run album again:
$ album -v
No info.dat, adding images from large
info.dat: Cannot update (does not exist)
Number of entries = 7 (7 added)
.......[7]
Creating pages for 7 images
(No image pages needed updating)
Creating pages for 1 index
(No index pages needed updating)
album tries to avoid doing unnecessary work as much as possible. In this case, all thumbnails and image and index pages are up to date. The line of periods shows progress, one period for each image processed.
<<lessSYNOPSIS
This tutorial describes the basic use of the Album program to create and maintain browser based photo albums.
Getting started
To get started, create a new directory and cd to it. Create a subdirectory large and put some pictures there. If you have installed the album tool in your execution path, you can now execute it as follows:
$ album -v
No info.dat, adding images from large
info.dat: Cannot update (does not exist)
Number of entries = 7 (7 added)
mkdir thumbnails
mkdir icons
mkdir css
Creating icons: first-gr.png first.png ... sound.png movie.jpg
Creating style sheets: common.css index.css ... journal.css
im023.jpg: thumbnail OK
im024.jpg: thumbnail OK
im025.jpg: thumbnail OK
im026.jpg: thumbnail OK
im027.jpg: thumbnail OK
im028.jpg: thumbnail OK
im029.jpg: thumbnail OK
Creating pages for 7 images
(Needed to write 7 image pages)
Creating pages for 1 index
(Needed to write 1 index page)
Your results will vary, but be similar to this example run. What you can see is that album found 7 images in the large directory, created thumbnails, icons and css directories, created thumbnails by resizing the images, and finally created the HTML pages. You can inspect your first photo album by opening file index.html with your favorite browser. You can click on any image to see the larger version. Navigation buttons are provided to the left of the image.
It is interesting to run album again:
$ album -v
No info.dat, adding images from large
info.dat: Cannot update (does not exist)
Number of entries = 7 (7 added)
.......[7]
Creating pages for 7 images
(No image pages needed updating)
Creating pages for 1 index
(No index pages needed updating)
album tries to avoid doing unnecessary work as much as possible. In this case, all thumbnails and image and index pages are up to date. The line of periods shows progress, one period for each image processed.
Download (0.049MB)
Added: 2006-11-17 License: Perl Artistic License Price:
1071 downloads
Test::LectroTest::Tutorial 0.3500
Test::LectroTest::Tutorial is a Perl module that contains documentation on how to use LectroTest to test your software. more>>
Test::LectroTest::Tutorial is a Perl module that contains documentation on how to use LectroTest to test your software.
SYNOPSIS
LectroTest is an automated, specification-based testing system. To use it, declare properties that specify the expected behavior of your software. Then invoke LectroTest to test whether those properties hold.
LectroTest does this by running repeated random trials against your software. If LectroTest finds that a property doesnt hold, it emits the counterexample that "broke" your software. You can then plug the counterexample into your software to debug the problem. (Its also a good idea to add the counterexample to your list of regression tests.)
Think of your softwares behavior as a haystack that youre searching for needles. Each error is a needle. You want to find the needles and remove of them. LectroTest will search the haystack for you -- its nice that way -- but first you must tell it about the shape of the haystack and how to recognize a needle when it sees one.
The Haystack
The shape of the haystack is defined by a set of "generator bindings," in which variables are bound to the output of value generators:
x = 0;
The above asserts for each point in the haystack that the output of the function the_thing_we_are_testing must be non-negative.
Put them together to make a Property
The generator bindings and needle recognizer are combined to make a property:
Property {
##[ x = 0;
}, name => "the_thing_we_are_testing(...) is non-negative";
Youll note that we also added a meaningful name. Although not strictly required, its an excellent practice that makes life easier. (Youll also note that we placed the generator bindings inside of the magic delimiters ##[ ]##. This tells Perl that our bindings are bindings and not regular Perl code.)
We can read the above property like so: "For all integers x and all characters c in the range A through Z, we assert that the_thing_we_are_testing is non-negative."
Testing whether your Properties hold
After you define properties for your software, just add them to a small Perl program that uses the Test::LectroTest module:
# MyProperties.l.t
use MyModule; # provides the_thing_we_are_testing
use Test::LectroTest;
Property {
##[ x = 0;
}, name => "the_thing_we_are_testing(...) is non-negative";
Then you can test your properties simply by running the program:
$ perl MyProperties.l.t
If your properties check out, youll see something like this:
1..1
ok 1 - the_thing_we_are_testing(...) is non-negative (1000 attempts)
If something goes wrong, however, LectroTest will tell you where it happened:
1..1
not ok 1 - the_thing_we_are_testing(...) is non-negative
falsified in 23 attempts
# Counterexample:
# $x = 4
# $c = "R"
What this says is that at the point (x=4, c="R") in the haystack, there is a needle (i.e., your property doesnt hold). With this information, you can examine your code to determine the cause of the error.
<<lessSYNOPSIS
LectroTest is an automated, specification-based testing system. To use it, declare properties that specify the expected behavior of your software. Then invoke LectroTest to test whether those properties hold.
LectroTest does this by running repeated random trials against your software. If LectroTest finds that a property doesnt hold, it emits the counterexample that "broke" your software. You can then plug the counterexample into your software to debug the problem. (Its also a good idea to add the counterexample to your list of regression tests.)
Think of your softwares behavior as a haystack that youre searching for needles. Each error is a needle. You want to find the needles and remove of them. LectroTest will search the haystack for you -- its nice that way -- but first you must tell it about the shape of the haystack and how to recognize a needle when it sees one.
The Haystack
The shape of the haystack is defined by a set of "generator bindings," in which variables are bound to the output of value generators:
x = 0;
The above asserts for each point in the haystack that the output of the function the_thing_we_are_testing must be non-negative.
Put them together to make a Property
The generator bindings and needle recognizer are combined to make a property:
Property {
##[ x = 0;
}, name => "the_thing_we_are_testing(...) is non-negative";
Youll note that we also added a meaningful name. Although not strictly required, its an excellent practice that makes life easier. (Youll also note that we placed the generator bindings inside of the magic delimiters ##[ ]##. This tells Perl that our bindings are bindings and not regular Perl code.)
We can read the above property like so: "For all integers x and all characters c in the range A through Z, we assert that the_thing_we_are_testing is non-negative."
Testing whether your Properties hold
After you define properties for your software, just add them to a small Perl program that uses the Test::LectroTest module:
# MyProperties.l.t
use MyModule; # provides the_thing_we_are_testing
use Test::LectroTest;
Property {
##[ x = 0;
}, name => "the_thing_we_are_testing(...) is non-negative";
Then you can test your properties simply by running the program:
$ perl MyProperties.l.t
If your properties check out, youll see something like this:
1..1
ok 1 - the_thing_we_are_testing(...) is non-negative (1000 attempts)
If something goes wrong, however, LectroTest will tell you where it happened:
1..1
not ok 1 - the_thing_we_are_testing(...) is non-negative
falsified in 23 attempts
# Counterexample:
# $x = 4
# $c = "R"
What this says is that at the point (x=4, c="R") in the haystack, there is a needle (i.e., your property doesnt hold). With this information, you can examine your code to determine the cause of the error.
Download (0.053MB)
Added: 2007-01-09 License: Perl Artistic License Price:
1018 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 xmlencoder tutorial 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