Skip to content

Commit

Permalink
Update manual with info on LTI aliases
Browse files Browse the repository at this point in the history
  • Loading branch information
Aaron Mininger authored and garfieldnate committed Oct 2, 2024
1 parent 42d2871 commit e604786
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 2 deletions.
2 changes: 2 additions & 0 deletions ManualSource/manual.tex
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,8 @@
%\usepackage{caption}
%\usepackage{fancyvrb}

\usepackage{nameref}

\providecommand{\tightlist}{%
\setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}

Expand Down
23 changes: 21 additions & 2 deletions ManualSource/smem.tex
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,29 @@ \subsection{User-Initiated Storage}
\end{verbatim}

Unlike agent storage, declarative storage is automatically recursive.
Thus, this command instance will add a new long-term identifier (represented by the temporary 'arithmetic' variable) with three augmentations.
Thus, this command instance will add a new long-term identifier (represented by the temporary `arithmetic' variable) with three augmentations.
The value of each augmentation will each become an LTI with two constant attribute/value pairs.
Manual storage can be arbitrarily complex and use standard dot-notation.
The add command also supports hardcoded LTI ids such as \soar{{@}1} in place of variables.

The \soar{add} command also supports two methods for hardcoding LTIs.
You can use an integer, such as \soar{{@}123}, which will be the literal ID in semantic memory.
You can also use a string, such as \soar{{@}table}, which defines a name, or alias, for an LTI.
This is purely a user convenience; it allows you to refer to an LTI by name
or connect the same LTI across different \soar{add}s or files.

For Example:

\begin{verbatim}
smem --add {
(@red ^name red ^is-a color)
}
smem --add {
(<rouge> ^word rouge ^concept @red)
}
\end{verbatim}

These aliases are not visible to the agent and cannot be used in productions.
However, they can be used in other CLI commands, such as \nameref{print}.

\subsection{Storage Location}
\index{smem!storage}
Expand Down

0 comments on commit e604786

Please sign in to comment.