Interfaces-to-External-Code.html 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <html lang="en">
  2. <head>
  3. <title>Interfaces to External Code - 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="up" href="Virtual-Code-Semantics.html#Virtual-Code-Semantics" title="Virtual Code Semantics">
  9. <link rel="prev" href="Exception-Handling.html#Exception-Handling" title="Exception Handling">
  10. <link rel="next" href="Vacant-Address-Space.html#Vacant-Address-Space" title="Vacant Address Space">
  11. <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
  12. <meta http-equiv="Content-Style-Type" content="text/css">
  13. <style type="text/css"><!--
  14. pre.display { font-family:inherit }
  15. pre.format { font-family:inherit }
  16. pre.smalldisplay { font-family:inherit; font-size:smaller }
  17. pre.smallformat { font-family:inherit; font-size:smaller }
  18. pre.smallexample { font-size:smaller }
  19. pre.smalllisp { font-size:smaller }
  20. span.sc { font-variant:small-caps }
  21. span.roman { font-family:serif; font-weight:normal; }
  22. span.sansserif { font-family:sans-serif; font-weight:normal; }
  23. --></style>
  24. </head>
  25. <body>
  26. <div class="node">
  27. <a name="Interfaces-to-External-Code"></a>
  28. <p>
  29. Next:&nbsp;<a rel="next" accesskey="n" href="Vacant-Address-Space.html#Vacant-Address-Space">Vacant Address Space</a>,
  30. Previous:&nbsp;<a rel="previous" accesskey="p" href="Exception-Handling.html#Exception-Handling">Exception Handling</a>,
  31. Up:&nbsp;<a rel="up" accesskey="u" href="Virtual-Code-Semantics.html#Virtual-Code-Semantics">Virtual Code Semantics</a>
  32. <hr>
  33. </div>
  34. <h4 class="subsection">2.7.16 Interfaces to External Code</h4>
  35. <p>A few other combinators have been incorporated into the virtual
  36. machine as alternatives to the style of interactive applications
  37. described in <a href="Output-From-Interactive-Applications.html#Output-From-Interactive-Applications">Output From Interactive Applications</a>. These make it
  38. possible to interface with external libraries and applications either
  39. by a simple function call, or by executing a run-time generated
  40. transducer as described previously. In either case, there is no need
  41. for any particular command line options to specify interactive
  42. invocation, nor for the application to be designed that way from the
  43. outset. Existing virtual code applications may therefore be enhanced
  44. to make use of these features without radical changes.
  45. <p>To account for these additional capabilities, it is not entirely
  46. adequate to continue defining the virtual machine semantics in terms
  47. of a mathematical function, but it is done nevertheless due to the
  48. lack of any appealing alternative. Although most library functions are
  49. in fact functions in the sense that their outputs are determined by
  50. their arguments, they defy a concise specification within the present
  51. mathematical framework, especially insofar as they may involve finite
  52. precision floating point numbers. More problematically, the effect of
  53. interaction with a shell is neither well defined nor deterministic.
  54. The descriptions that follow presuppose a computational procedure
  55. associated with the following definitions but leave its exact nature
  56. unspecified.
  57. <ul class="menu">
  58. <li><a accesskey="1" href="Library-combinator.html#Library-combinator">Library combinator</a>
  59. <li><a accesskey="2" href="Have-combinator.html#Have-combinator">Have combinator</a>
  60. <li><a accesskey="3" href="Interaction-combinator.html#Interaction-combinator">Interaction combinator</a>
  61. </ul>
  62. </body></html>