Go backward to Preferences.
Go up to Syntax of the Symbol Level.
Go forward to Impasses and subgoals (syntax).
Production memory
=================
Syntactically, each production has three required components: a *name*, a
condition-side (also called the left-hand side, or LHS), and an action-side
(also called the right-hand side, or RHS). An optional string of text can be
included following the name as a comment. Expanded, each production consists
of an opening parenthesis; the symbol sp; the production's name; an optional
comment string; the production's conditions; the symbol -->; the production's
actions; and a closing parenthesis. Below is a template for a Soar
production.
(sp production-name
[ "optional-documentation-string" ]
[ flag ]*
CONDITIONS
-->
ACTIONS)
flag ::= :o-support | :no-o-support | :default | :chunk
The documentation string is just a comment inclosed in double quotes:
{"string"}.
The flags give information about the production. :O-support specifies that
all the actions are to be given o-support. :No-o-support specifies that none
of the actions are to be given o-support. {:Default} specifies that this is
a default rule. :Chunk specifies that this is a chunk. The :chunk flag is
provided so that you can {(list-chunks)} to a file, then reload them later
and have them "look and act" like chunks.
Soar productions can either be loaded in by a user or be produced by the
system itself (i.e., chunks from chunking).
Menu
- The semantics of productions
-
- The condition side
-
- The action side
-