External-Libraries.html 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. <html lang="en">
  2. <head>
  3. <title>External Libraries - avram - a virtual machine code interpreter</title>
  4. <meta http-equiv="Content-Type" content="text/html">
  5. <meta name="description" content="avram - a virtual machine code interpreter">
  6. <meta name="generator" content="makeinfo 4.13">
  7. <link title="Top" rel="start" href="index.html#Top">
  8. <link rel="prev" href="Changes.html#Changes" title="Changes">
  9. <link rel="next" href="Copying.html#Copying" title="Copying">
  10. <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
  11. <meta http-equiv="Content-Style-Type" content="text/css">
  12. <style type="text/css"><!--
  13. pre.display { font-family:inherit }
  14. pre.format { font-family:inherit }
  15. pre.smalldisplay { font-family:inherit; font-size:smaller }
  16. pre.smallformat { font-family:inherit; font-size:smaller }
  17. pre.smallexample { font-size:smaller }
  18. pre.smalllisp { font-size:smaller }
  19. span.sc { font-variant:small-caps }
  20. span.roman { font-family:serif; font-weight:normal; }
  21. span.sansserif { font-family:sans-serif; font-weight:normal; }
  22. --></style>
  23. </head>
  24. <body>
  25. <div class="node">
  26. <a name="External-Libraries"></a>
  27. <p>
  28. Next:&nbsp;<a rel="next" accesskey="n" href="Copying.html#Copying">Copying</a>,
  29. Previous:&nbsp;<a rel="previous" accesskey="p" href="Changes.html#Changes">Changes</a>,
  30. Up:&nbsp;<a rel="up" accesskey="u" href="index.html#Top">Top</a>
  31. <hr>
  32. </div>
  33. <h2 class="appendix">Appendix D External Libraries</h2>
  34. <p>Various functions are callable from virtual code applications by way
  35. of the <code>library</code> combinator as explained in <a href="Library-combinator.html#Library-combinator">Library combinator</a>. An expression (shown in <code>silly</code> syntax) of the form
  36. <code>library('foo','bar') x</code> applies a function named <code>'bar'</code>
  37. from a library named <code>'foo'</code> to an argument <code>x</code>.
  38. <p>A brief overview of the libraries and functions can always be had by
  39. executing
  40. <pre class="example"> $ avram --external-libraries
  41. </pre>
  42. <p class="noindent">The listing displayed by this command may show some that are not
  43. included here if this version of the documentation is not current or
  44. your installation has been locally enhanced. It may also lack some
  45. that are documented here if your installation is not fully equipped.
  46. <p>Although the overview from the command line is adequate for a
  47. reminder, it is not informative enough to explain how each function
  48. should be used. The purpose of this section is to provide this
  49. information in greater detail.
  50. <p>Some general comments are applicable to all libraries.
  51. <p>Each library documented in this section can generate error messages in
  52. the event of exceptional conditions, that are documented individually.
  53. In addition to those, it's also possible for any library function to
  54. return error messages of
  55. <a name="index-unrecognized-library-703"></a><a name="index-unrecognized-function-name-704"></a>
  56. <pre class="example"> &lt;'unrecognized library'&gt;
  57. &lt;'unrecognized <var>xxxx</var> function name'&gt;
  58. </pre>
  59. <p class="noindent">where <var>xxxx</var> is the name of a library. These indicate either that
  60. the library name is invalid, or the library name is valid but the
  61. function name is invalid, or that they're both valid but the library
  62. wasn't detected on the host when <code>avram</code> was compiled. A virtual
  63. code application can always avoid these errors by testing for the
  64. availability of a function using the <code>have</code> combinator (<a href="Have-combinator.html#Have-combinator">Have combinator</a>).
  65. <p>In addition, any library function that operates on numerical values or
  66. lists thereof can return these messages in cases of invalid input.
  67. <a name="index-missing-value-705"></a><a name="index-invalid-value-706"></a><a name="index-bad-vector-specification-707"></a><a name="index-bad-matrix-specification-708"></a>
  68. <pre class="example"> &lt;'missing value'&gt;
  69. &lt;'invalid value'&gt;
  70. &lt;'bad vector specification'&gt;
  71. &lt;'bad matrix specification'&gt;
  72. </pre>
  73. <p class="noindent">These messages indicate that an input parameter that was required to
  74. be a valid representation of a floating point number, a vector,
  75. or a matrix was something other than that (<a href="Type-Conversions.html#Type-Conversions">Type Conversions</a>).
  76. The last could also occur if a parameter that is required to be
  77. a square matrix has unequal numbers of rows and columns.
  78. <ul class="menu">
  79. <li><a accesskey="1" href="bes.html#bes">bes</a>: Bessel functions
  80. <li><a accesskey="2" href="complex.html#complex">complex</a>: native complex arithmetic
  81. <li><a accesskey="3" href="fftw.html#fftw">fftw</a>: fast Fourier transforms
  82. <li><a accesskey="4" href="glpk.html#glpk">glpk</a>: simplex linear programming
  83. <li><a accesskey="5" href="gsldif.html#gsldif">gsldif</a>: numerical differentiation
  84. <li><a accesskey="6" href="gslevu.html#gslevu">gslevu</a>: series acceleration
  85. <li><a accesskey="7" href="gslint.html#gslint">gslint</a>: numerical integration
  86. <li><a accesskey="8" href="harminv.html#harminv">harminv</a>: harmonic inversion
  87. <li><a accesskey="9" href="kinsol.html#kinsol">kinsol</a>: constrained non-linear optimization
  88. <li><a href="lapack.html#lapack">lapack</a>: linear algebra
  89. <li><a href="math.html#math">math</a>: native floating point arithmetic
  90. <li><a href="mtwist.html#mtwist">mtwist</a>: random number generation
  91. <li><a href="minpack.html#minpack">minpack</a>: non-linear optimization
  92. <li><a href="mpfr.html#mpfr">mpfr</a>: arbitrary precision arithmetic
  93. <li><a href="lpsolve.html#lpsolve">lpsolve</a>: mixed integer programming
  94. <li><a href="rmath.html#rmath">rmath</a>: statistical and special functions
  95. <li><a href="umf.html#umf">umf</a>: sparse matrices
  96. </ul>
  97. </body></html>