Go backward to excise-task.
Go up to Changing production memory.
sp
--
Creates a new production. If the production replaces a previously existing
production (i.e., a production with the same name) the old production will be
excised.
SYNTAX
(sp production-name
[ "optional-documentation-string" ]
[ flag ]*
lhs
-->
rhs)
flag ::= :o-support | :no-o-support | :default | :chunk
The optional flags are as follows:
* :o-support
specifies that all the RHS actions are to be given
O-support when the production fires
* :no-o-support
specifies that all the RHS actions are only to be given
I-support when the production fires
* :default
specifies that this production is a default production (this
matters for (excise-task) and (watch task))
* :chunk
specifies that this production is a chunk (this matters for
(learn trace))
EXAMPLE
(sp blocks*create-problem-space
"This creates the top-level space"
(goal <g> ^supergoal nil)
-->
(goal <g> ^name solve-blocks-world ^desired <d> ^problem-space <p>)
(problem-space <p> ^name blocks-world))