2
<head><title>GUARD-EVALUATION-TABLE.html -- ACL2 Version 3.0.1</title></head>
2
<head><title>GUARD-EVALUATION-TABLE.html -- ACL2 Version 3.1</title></head>
3
3
<body text=#000000 bgcolor="#FFFFFF">
4
4
<h3>GUARD-EVALUATION-TABLE</h3>a table that shows combinations of <a href="DEFUN-MODE.html">defun-mode</a>s and <a href="GUARD.html">guard</a>-checking
5
5
<pre>Major Section: <a href="GUARD.html">GUARD</a>
44
44
<code>:</code><code><a href="SET-GUARD-CHECKING.html">set-guard-checking</a></code><code> t</code>, and then execute <code>(foo 3)</code>, you will
45
45
likely get an error from the call <code>(car 3)</code> made in raw Lisp.<p>
47
a2. Check the <a href="GUARD.html">guard</a>, without exception. Thus, we never run the raw Lisp
47
a2. For built-in (predefined) functions, see a1 instead. Otherwise:<br>
49
Check the <a href="GUARD.html">guard</a>, without exception. Thus, we never run the raw Lisp
48
50
code in this case. This can be useful when testing <code>:</code><code><a href="PROGRAM.html">program</a></code> mode
49
51
functions, but you may want to run <code>:</code><code><a href="COMP.html">comp</a></code><code> t</code> or at least
50
52
<code>:</code><code><a href="COMP.html">comp</a></code><code> :exec</code> in this case, so that the execution is done using
53
a3. Do not check the <a href="GUARD.html">guard</a>. For <code>:</code><code><a href="PROGRAM.html">program</a></code> mode functions, we
54
never run the raw Lisp code in this case; so if you care about efficiency,
55
see the comment in a2 above about <code>:</code><code><a href="COMP.html">comp</a></code>. This combination is
56
useful if you are using ACL2 as a programming language and do not want to
57
prove theorems about your functions or suffer <a href="GUARD.html">guard</a> violations. In this
58
case, you can forget about any connection between ACL2 and Common Lisp.<p>
55
a3. For built-in (predefined) functions, see a4 instead. Otherwise:<br>
57
Do not check the <a href="GUARD.html">guard</a>. For <code>:</code><code><a href="PROGRAM.html">program</a></code> mode functions, we never
58
run the raw Lisp code in this case; so if you care about efficiency, see the
59
comment in a2 above about <code>:</code><code><a href="COMP.html">comp</a></code>. This combination is useful if you
60
are using ACL2 as a programming language and do not want to prove theorems
61
about your functions or suffer <a href="GUARD.html">guard</a> violations. In this case, you can
62
forget about any connection between ACL2 and Common Lisp.<p>
60
64
a4. Run the raw Lisp code without checking <a href="GUARD.html">guard</a>s at all. Thus, for
61
65
<code>:</code><code><a href="PROGRAM.html">program</a></code> mode functions, the <code>nil</code> setting is often preferable to