Skip to content

Commit

Permalink
Pages from f2589ab
Browse files Browse the repository at this point in the history
  • Loading branch information
HadrienRenaud committed Sep 22, 2023
1 parent 5690eb8 commit f1b4e4d
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 4 deletions.
4 changes: 2 additions & 2 deletions herdtools7/ASLRefREADME.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>ASLRefREADME (herdtools7.ASLRefREADME)</title><link rel="stylesheet" href="../odoc.support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="index.html">Up</a><a href="index.html">herdtools7</a> &#x00BB; ASLRefREADME</nav><header class="odoc-preamble"><h1 id="getting-started-with-aslref"><a href="#getting-started-with-aslref" class="anchor"></a>Getting started with ASLRef</h1></header><nav class="odoc-toc"><ul><li><a href="#disclaimer">Disclaimer</a></li><li><a href="#installation">Installation</a><ul><li><a href="#pre-requisites">Pre-requisites</a></li><li><a href="#building">Building</a></li><li><a href="#checking">Checking</a></li></ul></li><li><a href="#running">Running</a><ul><li><a href="#basics">Basics</a></li><li><a href="#version-and-type-checking-flags">Version and type-checking flags</a><ul><li><a href="#asl-version">ASL Version</a></li><li><a href="#type-checking">Type-checking</a></li></ul></li><li><a href="#examples">Examples</a></li></ul></li></ul></nav><div class="odoc-content"><h2 id="disclaimer"><a href="#disclaimer" class="anchor"></a>Disclaimer</h2><p>This material covers both ASLv0 (viz, the existing ASL pseudocode language which appears in the Arm Architecture Reference Manual) and ASLv1, a new, experimental, and as yet unreleased version of ASL.</p><p>This material is work in progress, more precisely at pre-Alpha quality as per Arm’s quality standards. In particular, this means that it would be premature to base any production tool development on this material.</p><p>However, any feedback, question, query and feature request would be most welcome; those can be sent to Arm’s Architecture Formal Team Lead Jade Alglave &lt;[email protected]&gt; or by raising issues or PRs to the herdtools7 github repository.</p><h2 id="installation"><a href="#installation" class="anchor"></a>Installation</h2><h3 id="pre-requisites"><a href="#pre-requisites" class="anchor"></a>Pre-requisites</h3><p>The following steps have been tested on Unix.</p><ol><li><p>Install ocaml and opam (ocaml package manager), see <a href="https://ocaml.org/docs/up-and-running#installing-ocaml">the manual</a>. For example on MacOS:</p><pre class="language-bash"><code>$ brew install opam</code></pre></li><li><p>Install dependencies:</p><pre class="language-bash"><code>$ opam install dune menhir zarith</code></pre></li></ol><h3 id="building"><a href="#building" class="anchor"></a>Building</h3><ol><li><p>Clone herdtools7:</p><pre class="language-bash"><code>$ git clone https://github.com/herd/herdtools7.git</code></pre></li><li><p>Build and install into a location <code>$PREFIX</code>:</p><pre class="language-bash"><code>$ make build install PREFIX=$PREFIX</code></pre></li></ol><p>It's done!</p><h3 id="checking"><a href="#checking" class="anchor"></a>Checking</h3><p>If <code>$PREFIX</code> is in your <code>$PATH</code>, the following command should return a similar output:</p><pre class="language-bash"><code>$ aslref --version
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>ASLRefREADME (herdtools7.ASLRefREADME)</title><link rel="stylesheet" href="../odoc.support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="index.html">Up</a><a href="index.html">herdtools7</a> &#x00BB; ASLRefREADME</nav><header class="odoc-preamble"><h1 id="getting-started-with-aslref"><a href="#getting-started-with-aslref" class="anchor"></a>Getting started with ASLRef</h1></header><nav class="odoc-toc"><ul><li><a href="#disclaimer">Disclaimer</a></li><li><a href="#installation">Installation</a><ul><li><a href="#pre-requisites">Pre-requisites</a></li><li><a href="#building">Building</a></li><li><a href="#checking">Checking</a></li></ul></li><li><a href="#running">Running</a><ul><li><a href="#basics">Basics</a></li><li><a href="#version-and-type-checking-flags">Version and type-checking flags</a><ul><li><a href="#asl-version">ASL Version</a></li><li><a href="#type-checking">Type-checking</a></li></ul></li><li><a href="#examples">Examples</a></li><li><a href="#building-html-pages-locally-from-.mld-files">Building HTML pages locally from .mld files</a></li></ul></li></ul></nav><div class="odoc-content"><h2 id="disclaimer"><a href="#disclaimer" class="anchor"></a>Disclaimer</h2><p>This material covers both ASLv0 (viz, the existing ASL pseudocode language which appears in the Arm Architecture Reference Manual) and ASLv1, a new, experimental, and as yet unreleased version of ASL.</p><p>This material is work in progress, more precisely at pre-Alpha quality as per Arm’s quality standards. In particular, this means that it would be premature to base any production tool development on this material.</p><p>However, any feedback, question, query and feature request would be most welcome; those can be sent to Arm’s Architecture Formal Team Lead Jade Alglave &lt;[email protected]&gt; or by raising issues or PRs to the herdtools7 github repository.</p><h2 id="installation"><a href="#installation" class="anchor"></a>Installation</h2><h3 id="pre-requisites"><a href="#pre-requisites" class="anchor"></a>Pre-requisites</h3><p>The following steps have been tested on Unix.</p><ol><li><p>Install ocaml and opam (ocaml package manager), see <a href="https://ocaml.org/docs/up-and-running#installing-ocaml">the manual</a>. For example on MacOS:</p><pre class="language-bash"><code>$ brew install opam</code></pre></li><li><p>Install dependencies:</p><pre class="language-bash"><code>$ opam install dune menhir zarith</code></pre></li></ol><h3 id="building"><a href="#building" class="anchor"></a>Building</h3><ol><li><p>Clone herdtools7:</p><pre class="language-bash"><code>$ git clone https://github.com/herd/herdtools7.git</code></pre></li><li><p>Build and install into a location <code>$PREFIX</code>:</p><pre class="language-bash"><code>$ make build install PREFIX=$PREFIX</code></pre></li></ol><p>It's done!</p><h3 id="checking"><a href="#checking" class="anchor"></a>Checking</h3><p>If <code>$PREFIX</code> is in your <code>$PATH</code>, the following command should return a similar output:</p><pre class="language-bash"><code>$ aslref --version
aslref version 7.56+03 rev 7aa9d1f3cee2598ec64f14372f210e008ac5510f</code></pre><p>Please note that building herdtools7 depends on the installation path <code>$PREFIX</code>. If you want to move your installation from <code>$OLD_PREFIX</code> to <code>$NEW_PREFIX</code>, please use:</p><pre class="language-bash"><code>make uninstall PREFIX=$OLD_PREFIX
make build install PREFIX=$NEW_PREFIX</code></pre><h2 id="running"><a href="#running" class="anchor"></a>Running</h2><h3 id="basics"><a href="#basics" class="anchor"></a>Basics</h3><p>If <code>my-test.asl</code> contains a valid ASL program returning 0, the tool <code>aslref</code> does not print anything and exit with code 0.</p><pre class="language-bash"><code>$ aslref my-test.asl</code></pre><h3 id="version-and-type-checking-flags"><a href="#version-and-type-checking-flags" class="anchor"></a>Version and type-checking flags</h3><p>For a complete reference of arguments, see <code>aslref --help</code>.</p><h4 id="asl-version"><a href="#asl-version" class="anchor"></a>ASL Version</h4><p>To use the ASLv0 parser, use the <code>-0</code> flag.</p><p>The default parser is the ASLv1, but you can still specify it with <code>-1</code>.</p><h4 id="type-checking"><a href="#type-checking" class="anchor"></a>Type-checking</h4><p>There are currently three possible type-checking settings, listed here from the strongest to the weakest:</p><ol><li><code>--type-check-strict</code> fails on the first error encountered while type-checking the program. This is the default setting for ASLv1.</li><li><code>--type-check-warn</code> logs every error on the standard error output, but does not fail on any of them. The program might not be able to run through the interpreter if the type-checking phase failed.</li><li><code>--no-type-check</code> only performs minimal type-inference. Tries to fail as little as possible. This is the default for ASLv0.</li></ol><h3 id="examples"><a href="#examples" class="anchor"></a>Examples</h3><p>You can find examples of ASLv1 programs that <code>aslref</code> supports in <a href="https://github.com/herd/herdtools7/tree/master/asllib/tests/asl/required"><code>herdtools7/asllib/tests/asl/required</code></a>.</p></div></body></html>
make build install PREFIX=$NEW_PREFIX</code></pre><h2 id="running"><a href="#running" class="anchor"></a>Running</h2><h3 id="basics"><a href="#basics" class="anchor"></a>Basics</h3><p>If <code>my-test.asl</code> contains a valid ASL program returning 0, the tool <code>aslref</code> does not print anything and exit with code 0.</p><pre class="language-bash"><code>$ aslref my-test.asl</code></pre><h3 id="version-and-type-checking-flags"><a href="#version-and-type-checking-flags" class="anchor"></a>Version and type-checking flags</h3><p>For a complete reference of arguments, see <code>aslref --help</code>.</p><h4 id="asl-version"><a href="#asl-version" class="anchor"></a>ASL Version</h4><p>To use the ASLv0 parser, use the <code>-0</code> flag.</p><p>The default parser is the ASLv1, but you can still specify it with <code>-1</code>.</p><h4 id="type-checking"><a href="#type-checking" class="anchor"></a>Type-checking</h4><p>There are currently three possible type-checking settings, listed here from the strongest to the weakest:</p><ol><li><code>--type-check-strict</code> fails on the first error encountered while type-checking the program. This is the default setting for ASLv1.</li><li><code>--type-check-warn</code> logs every error on the standard error output, but does not fail on any of them. The program might not be able to run through the interpreter if the type-checking phase failed.</li><li><code>--no-type-check</code> only performs minimal type-inference. Tries to fail as little as possible. This is the default for ASLv0.</li></ol><h3 id="examples"><a href="#examples" class="anchor"></a>Examples</h3><p>You can find examples of ASLv1 programs that <code>aslref</code> supports in <a href="https://github.com/herd/herdtools7/tree/master/asllib/tests/asl/required"><code>herdtools7/asllib/tests/asl/required</code></a>.</p><h3 id="building-html-pages-locally-from-.mld-files"><a href="#building-html-pages-locally-from-.mld-files" class="anchor"></a>Building HTML pages locally from .mld files</h3><p>In the directory <code>herdtools7/</code>:</p><ol><li><p>Run:</p><pre class="language-bash"><code>$ dune build @doc</code></pre></li></ol><ol><li>Open <code>_build/default/_doc/_html/herdtools7/aslref.html</code></li></ol></div></body></html>
2 changes: 1 addition & 1 deletion herdtools7/ASLTypingReference.html

Large diffs are not rendered by default.

Loading

0 comments on commit f1b4e4d

Please sign in to comment.