$OpenXM: OpenXM/src/asir-contrib/guideline.txt,v 1.8 2005/03/26 23:25:46 takayama Exp $
How to commit your asir program to asir-contrib? [2005, 3/24]
1. The name of your source code should be
yourname_xyz.rr
if xyz is a general name like matrix, prime, resultant, etc.
The part "yourname" may be your nickname.
Example: noro_matrix.rr
If xyz is not a general name, the part yourname_ is not necessary.
Your asir source should be at asir-contrib/packages/src.
Or, you may make a new directory under asir-contrib/packages/src
to put your programs and data.
Example: asir-contrib/packages/src/todo_parametrize
Your may use both your own directory and the top level source code
to load sources in the own directory.
Example: asir-contrib/packages/src/naka_mora
asir-contrib/packages/src/naka_mora.rr
2. Please encapsulate your source code with modules.
When you use the module name which represents a mathematical notion
or a data structure,
the module name should be
pxxxx
where "p" is your identifying prefix and xxxx is a name of mathematical
notion or data structure name related to your module.
Example: nmatrix where "p" is "n" and "xxxx" is "matrix".
Example: fres where "p" is "f" and "xxxx" is "res" (or "resultant").
Example: nmora where "p" is "n" and "xxxx" is "mora".
3. Manuals should be written by the texinfo in English and/or Japanese.
They are put under the directory
asir-contrib/packagers/doc/'yourname_xyz'
The Makefile asir-contrib/packagers/doc/'yourname_xyz'/Makefile
is also necessary.
Example: asir-contrib/packages/doc/todo_parametrize/Makefile
asir-contrib/packages/doc/todo_parametrize/todo_parametrize_ja.texi
4. If you want to embed your manual in the source, you are welcome
to use "oxweave & gentexi" or "gdoc" (see http://texinfo.org).
5. Please refer to papers that explain algorithms in your package
from your texinfo manual.
6. Please include test data that you used to check the correctness
of your implementation or to make demonstrations.
7. About function names of your module.
Please use any names you like.
However, please also include "long function names" separated by "_"
such as "total_degree".
Directory structure
Windows:
bin/
lib/
lib-asir-contrib/
Unix:
lib/asir
lib/asir-contrib
Documents (unix):
Online manual (ja)
lib/asir/help-jp/
lib/asir/help-jp/'modulename.functionname'
HTML manual (ja)
doc/asir-contrib/help-ja/cman-ja_toc.html
doc/asir-contrib/help-ja/'yourname_xyz'/'yourname_xyz'_ja_toc.html