### Further routines

The concatenation of two vectors:
- NAME:
* append_vector*
- SYNOPSIS:
* INT append_vector(OP a,b,c)*
- DESCRIPTION:
*a,b* should be VECTORobjects, *c* the empty object.
The routine bulids an new VECTORobject *c,* where the
first part is a copy of *a* and the second part a copy of
*b.*
- RETURN: OK, or ERROR
- BUG: there is no check on types, because this is a special
routine, normally you should use
*append* instead.

Comparing two vectors with respect to lexicographic ordering:
- NAME:
* comp_vector*
- SYNOPSIS:
* INT comp_vector(OP a,b)*
- DESCRIPTION:
* a,b* should be VECTORobjects, the routine does
lexicographic comparision.
- RETURN: 0 = equal,
*<0* if *a <b,* *>0* if *a>b*
- BUG: there is no check on types, because this is a special
routine, normally you should use
*comp* instead.

Copying can be done as follows:
- NAME:
* copy_vector*
- SYNOPSIS:
*INT copy_vector(OP a,b)*
- DESCRIPTION:
*a* should be a VECTORobject, *b* the empty object.
*b* becomes a copy of *a.* *a* and *b* must be different. This
routine is called by other copy routines,
which copy objects with VECTOR type components.
- RETURN: OK, or ERROR
- BUG: there is no check on types, and there is no check
whether a and b are different. Because this is a special
routine, normaly you should use
*copy* instead.

harald.fripertinger@kfunigraz.ac.at,

last changed: November 19, 2001