  We represent vector bundles over a regular algebraic curve as pairs of
lattices over the maximal orders of its function field and we give polynomial
time algorithms for several tasks: computing determinants of vector bundles,
kernels and images of global homomorphisms, isomorphisms between vector
bundles, cohomology groups, extensions, and splitting into a direct sum of
indecomposables. Most algorithms are deterministic except for computing
isomorphisms when the base field is infinite. Some algorithms are only
polynomial time if we may compute Hermite forms of pseudo-matrices in
polynomial time. All algorithms rely exclusively on algebraic operations in
function fields. For applications, we give an algorithm enumerating isomorphism
classes of vector bundles on an elliptic curve, and to construct algebraic
geometry codes over vector bundles. We implement all our algorithms into a
SageMath package.
