OnlineJudge-Progra version 0.021
===============================
Progra is an online judge capable of compile and test programs
written to solve a programming task.
Requisites:
* Linux
* Perl 5 (see extra modules below)
* diff
Obviously, you'll need the compilers and/or interpreters of the languages
you'll use (e.g. gcc, perl, g++). The main path structure needed
to use Progra is as follows:
- user_path/
- task_path/
- input.0
- input.1
...
- input.n-1
- output.0
- output.1
...
- output.n-1
The user_path and task_path must uniquely identify a user/task. The
user_path is used to store the output generated by the user's source
code. The task_path is used to store task's testcases. These testcases
must be consistent, meaning that there must be exactly the same number
of inputs and outputs. The naming of testcases is input./output. followed
by a number from 0 to n-1, n being the total number of testcases for that
particular task. The mapping between input and output is given by this
number. For example, input.0 is associated with output.0, input.1 with
output.1 and so forth.
Once progra starts, it creates a .pid file in its home directory. To stop
it you should delete this file. There is a progra.sh file included in case
you need to automate this.
Finally, remember thar source codes to be tested must interact with
standard input and standard ouput.
For more information look at the POD in Progra.pm.
INSTALLATION
To install this module type the following:
perl Makefile.PL
make
make test
make install
DEPENDENCIES
This module requires:
Cwd
Proc::Killall
File::Spec::Functions
File::Copy
COPYRIGHT AND LICENSE
israel leiva <ilv AT cpan DOT org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
http://www.gnu.org/licenses/