::SHE+ILA:: and the FBI (Fundamental Buffer Interface) [$03]

Modern Mail Sorting System on Textured Brick Wall
50
0
  • Squishy Plushie's avatar Artist
    Squishy Pl...
  • Prompt
    Read prompt
  • DDG Model
    DaVinci2
  • Access
    Public
  • Created
    6d ago
  • Try

More about ::SHE+ILA:: and the FBI (Fundamental Buffer Interface) [$03]

The FBI is the Fundamental Buffer Interface, which runs in the datastore (SHE) and is called by the executive (ILA) to manipulate the store. It primarily consists of the following opcodes (all starting with FB hex) :
Specify ::> allocates a buffer and stores a variable (data item) in it. Uses a data name specified by the user, putting that name into the name table (the zeroeth element of the FBI). For example, "(3, 3) .ro. .io. 9 ::> X" places a two-by-two array (1 2 3)(4 5 6)(7 8 9) into new variable X.
Push << and Pop > have two flavours : pushing to the front (<) or end (<<), and popping from the front (>) or end (>>), rather like C++'s insert and extract operators.
Length (#) gets the number of elements in the named buffer (not including nested elements, for example #X would have the value (3 3), and ##X would be 2 (the rank of the array).
Query (?) causes the current thread to wait while the named buffer is empty, for example wait for a keypress or mouse move to occur. This is useful in an event block (see "Code Blocks").
Instantiate -::> creates a new instance of a class, based upon the base template ("class factory") supplied. (For example BASECLASS -::> MYCLASS). It may also be written as ::-> .
There are other FBI operations (such as output formatting, similar to printf() ) but that's it for now :)

Comments


Loading Dream Comments...

Discover more dreams from this artist