COGENT Online
CONTENTS
COGENT Help

Buffer/Table

Introduction

A buffer is an information store. It is a place where information can be put for later retrieval. Buffers are appropriate for both short term storage (as in modelling working memory, for example) and long term storage (as in large knowledge bases). They can be configured, through subclasses and properties, so as to behave in a variety of different ways (allowing, for example, decay of elements or capacity restrictions).

Table Buffers have specialised characteristics allowing them to behave as two-dimensional tabular representations. Like Table Sinks, Table Buffers expect to receive messages of the form:

Such messages are interpreted as indicating that the table entry indexed by the values of "Row" and "Col" is "Value". This new value will supersede any previous value associated with "Row" and "Col".

The Table View

Table Buffers can be viewed as tables by selecting the appropriate view from their Mode menu. Each element is used to construct an entry within a row and column labelled with the values of "Row" and "Col" for which the element was specified. The standard printing procedures may be used to print these tables.

Properties

The precise behaviour of a buffer is determined by the values of a number of properties. Table buffers have extra access options permitting Left->Right, Right->Left, Top->Bottom and Bottom->Top access, similar to the access options in Analogue Buffers, and like propositional buffers, there are properties controlling decay, capacity limitations and access order.

All buffers have the following properties:

As well as the standard buffer properties, Table Buffers also have specialised options:

The Buffer Element Editor

Recall that all information must be represented in COGENT via Prolog terms. Buffer elements are no exception, but they are perhaps the simplest sorts of box elements in COGENT. This is reflected in the simplicity of the buffer element editor. Apart from the comment line, it contains a single text field into which the buffer element should be typed. The contents of this field should be a valid Prolog term. If not, however, COGENT does automatic syntax checking (and attempted correction) of editor elements, and so any error will be noted and (possibly) corrected.


COGENT Online
CONTENTS
COGENT Help