Reference-Implementations.html 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <html lang="en">
  2. <head>
  3. <title>Reference Implementations - 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="Character-Table.html#Character-Table" title="Character Table">
  9. <link rel="next" href="Changes.html#Changes" title="Changes">
  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="Reference-Implementations"></a>
  27. <p>
  28. Next:&nbsp;<a rel="next" accesskey="n" href="Changes.html#Changes">Changes</a>,
  29. Previous:&nbsp;<a rel="previous" accesskey="p" href="Character-Table.html#Character-Table">Character Table</a>,
  30. Up:&nbsp;<a rel="up" accesskey="u" href="index.html#Top">Top</a>
  31. <hr>
  32. </div>
  33. <h2 class="appendix">Appendix B Reference Implementations</h2>
  34. <p>This appendix contains some <code>silly</code> source code for several
  35. functions that are mentioned in <a href="Virtual-Code-Semantics.html#Virtual-Code-Semantics">Virtual Code Semantics</a>, for specifying the virtual
  36. machine code semantics, namely <code>pairwise</code>, <code>transition</code>,
  37. <code>insert</code> and <code>replace</code>.
  38. <p>The intention is to specify the virtual machine mathematically with a
  39. minimum of hand waving, by using only simple equations and small
  40. fragments of <code>silly</code> code, which has a straightforward semantics.
  41. However, the <code>silly</code> code fragments are more significant in some
  42. cases than what could fit into a few lines or be mechanically derived
  43. from an equation.
  44. <p>The purpose of this appendix is therefore to avoid leaving any gaps in
  45. the construction by demonstrating that everything mentioned can be done. None
  46. of this code is needed for any practical purpose, because its
  47. functionality is inherent in the virtual machine, but it shows how
  48. certain operations would be specified if they were not built in.
  49. <ul class="menu">
  50. <li><a accesskey="1" href="Pairwise.html#Pairwise">Pairwise</a>
  51. <li><a accesskey="2" href="Insert.html#Insert">Insert</a>
  52. <li><a accesskey="3" href="Replace.html#Replace">Replace</a>
  53. <li><a accesskey="4" href="Transition.html#Transition">Transition</a>
  54. </ul>
  55. </body></html>