Update to OpenAxiom 1.4.1

Changes in OpenAxiom-1.4.1

Algebra

The domain ScriptFormulaFormat and the package ScriptFormulaFormat1 have been removed.


Changes in OpenAxiom-1.4.0

This release introduces the following changes from the base document
("AXIOM: The Scientific Computation System" by Jenks and Sutor).

Compiler

  * The compiler now accepts interpreter-style unnamed functions.
  * The compiler now generate far better (Lisp) codes for Spad libraries
    or scripts. The compiler now applies more aggressive (but sound)
    optimizations, including domain inlining, type propagations.
  * The compiler now accepts interpreter-style unnamed functions.
  * Parameterized macros are now supported by the compiler.
  * The compiler now support exception handling. In particular,
    the try/finally programming construct was added to support reliable
    resource management (e.g. opening/closing or creating/removing files.)

Algebra

In addition to novelties in OpenAxiom-1.3.0, the following types have been
added to OpenAxiom-1.4.0:

  * The category BooleanLogic has been added.
    It is now extended by PropositionalLogic and BitAggregate.
    The domain SingleInteger now satisfies BooleanLogic.
  * It it now possible to obtain the string representation of a
    DoubleFloat value. The function

       string: DoubleFloat -> %

    was added to the domain String
  * A function matrix is now exported by the category MatrixCategory
    to allow construction of matrices whose entries can be succinctely
    described by a function. For instance, the 4-by-4 Hilbert matrix
    may be expressed as

       m: Matrix Fraction Integer := matrix(4,4,(i,j) +-> 1/(i+j))

    Note that the third argument is a function that computes the value
    of the (i,j)th entry.
  * The category StringCategory was removed as it was essentially redundant
    with the category StringAggregate.
  * The category MappingCategory is now part of the algebra as a builtin
    category constructor.
  * The following operators

       less?: (%,NonNegativeInteger) -> Boolean
       more?: (%,NonNegativeInteger) -> Boolean
       size?: (%,NonNegativeInteger) -> Boolean

    have been moved from the category Aggregate to StreamAggregate
    where they seem more appropriate.
  * The domain InnerTaylorSeries now satisfies the category BiModule.
  * The domains FreeModule and OrderedFreeMonoid now satisfy the newly
    added FreeMonoidCategory.
  * The list of domains for OpenAxiom program manipulation has been expanded.
  * Support for range and segment bindings now includes RangeBinding.

Boot

Boot, the programming language used to write the OpenAxiom compiler,
has been vastly improved. Lisp codes are being phased out.
Add forgotten patches.
Updated math/openaxiom to 1.4.1
net/bind99: Fix undefined reference to `main'

DragonFly build was broken during the linking of driver.so
----
libtool: link: cc -o driver.so .libs/driver.o -L/wrkobjdir/net/bind99/work/.buildlink/lib
/usr/lib/crt1.o: In function `_start':
crt1.c:(.text+0x149): undefined reference to `main'
*** Error code 1
----

This has been seen on other platforms:
Fedora: http://lists.fedoraproject.org/pipermail/scm-commits/2011-November/683368.html
Gentoo: https://bugs.gentoo.org/show_bug.cgi?id=406399

Not building dlzexternal is the solution the worked in the above reports.
It works for DragonFly as well, and the PLIST is not affected.
sysutils/rox: Fix indirect linking error on DragonFly
devel/bzr: USE_TOOLS+= msgfmt
Fix build with gcc<4.5.
For example, fix build on DragonFly 3.0.1.
See https://bugzilla.mozilla.org/show_bug.cgi?id=621446