1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
|
<html><head><title>XLISP remprop</title>
<link rel="stylesheet" type="text/css" href="reference.css">
</head>
<body>
<a href="../start.htm">Nyquist / XLISP 2.0</a> -
<a href="../manual/contents.htm">Contents</a> |
<a href="../tutorials/tutorials.htm">Tutorials</a> |
<a href="../examples/examples.htm">Examples</a> |
<a href="reference-index.htm">Reference</a>
<hr>
<h1>remprop</h1>
<hr>
<p><table cellpadding="0" cellspacing="0" style="margin-left:10px"><tbody>
<tr valign="top">
<td><nobr>Type:</nobr></td>
<td><nobr> - </nobr></td>
<td width="100%"><nobr>function (subr)</nobr></td>
</tr>
<tr valign="top">
<td><nobr>Source:</nobr></td>
<td><nobr> - </nobr></td>
<td width="100%"><nobr>xlbfun.c</nobr></td>
</tr>
</tbody></table></p>
<h2>Syntax</h2>
<dl>
<dt>(remprop <i>symbol property</i>)</dt>
<dd><i>symbol</i> - the symbol with a property list<br>
<i>property</i> - the property name being removed<br>
returns - the property value</dd>
</dl>
<h2>Description</h2>
<p>The 'remprop' function removes the 'property' from the 'symbol'. The
function returns a <a href="nil.htm">NIL</a>. If the 'property'
does not exist, there is no error generated. The 'symbol' must be an
existing symbol. Property lists are lists attached to any user defined
variables. The lists are in the form of:</p>
<pre class="example">
(<font color="#008844"><i>name1 val1 name2 val2</i></font> ... )
</pre>
<p>Any number of properties may be attached to a single variable.</p>
<h2>Examples</h2>
<pre class="example">
(setq person 'bobby) <font color="#008844">; create a var with a value</font>
(putprop person 'boogie 'last-name) <font color="#008844">; add a LAST-NAME property</font>
(putprop person 'disc-jockey 'job) <font color="#008844">; add a JOB property</font>
(get person 'last-name) <font color="#008844">; retrieve LAST-NAME - boogie</font>
(get person 'job) <font color="#008844">; retrieve JOB - disc-jockey</font>
(get person 'height) <font color="#008844">; non-existant - returns NIL</font>
(remprop person 'job) <font color="#008844">; remove JOB</font>
(remprop person 'height) <font color="#008844">; remove non-existant</font>
</pre>
<p><b>Common Lisp:</b> Common Lisp does not have a 'remprop' function. It
uses <a href="setf.htm">setf</a> to achieve this functionality.
Porting from Common Lisp to XLISP will work fine since XLISP supports the
<a href="setf.htm">setf</a> modifications of property lists and
the <a href="get.htm">get</a> function to retrieve property
values from symbol names. Porting from XLISP to Common LISP will require
translating 'remprop' into <a href="setf.htm">setf</a> forms.</p>
<p>See the
<a href="../manual/xlisp-man-014.htm#remprop">remprop</a>
function in the <nobr>XLISP 2.0</nobr> manual.</p>
<p><nobr> <a href="#top">Back to Top</nobr></a></p>
<hr>
<a href="../start.htm">Nyquist / XLISP 2.0</a> -
<a href="../manual/contents.htm">Contents</a> |
<a href="../tutorials/tutorials.htm">Tutorials</a> |
<a href="../examples/examples.htm">Examples</a> |
<a href="reference-index.htm">Reference</a>
</body></html>
|