About FRAMEWORKV / VII and the FRED Computer Language


Note: The following text applies specifically to Framework VII circa 2001.
Framework is a unique business and development software suite built entirely from a single type polymorphic data-object referred to as frames. After loading into DOS' real or virtual mode, under Windows or emulators such as Insignia, FRAMEWORK V / VII builds its own memory system. It then creates an event-driven object-based environment that include all typical business tools and an integrated text-aware interpreter with both text and object selection capabilities.

FRAMEWORK V / VII user interface consists of a very small set of general reusable commands, equally applied to all objects.

FRAMEWORK V / VII objects, namely the frames, are all-purpose containers which may contain other frames, drawings, pictures or text. A frame may contain word processing documents, spreadsheets, databases, charts, or even an active telecommunication terminal. Frames are used as programming variables and even to contain FRAMEWORK V / VII's own code routines and menus.

A Frame exists in a context. Frames are literally related to each other. Having being created in or next to another frame, they maintain hierarchical non-linear relations for life (or until moved). Frames may refer to other frames, cells, or records, anywhere in the hundreds of documents and outlines which may be open on the desktop, by name or location, in the same way that a spreadsheet cell may reference its neighbor cells but with powers not readily available in spreadsheets such as long text-like names, cursor pointing, polymorphism, indexed region-based referencing, toggling between name, coordinates, and location referencing and more.

Framework provides top-level business application functionality: file management, outlining, word processing, marked and unmarked (codeless) hypertext, spreadsheet, formulas, database, automatic database reporting, automatic mailmerge, graphics, electronic-mail, telecommunications, terminal emulation, networking, group editing, a rapid development computer language, export and import to most major Windows and DOS programs, HTML code generation, WWW site building, and more. Framework's user interface is a complete, consistent and unified productivity-oriented small set of general functions which are equally applied to all Framework objects.

The Framework selection capabilities and life-like object-verb interface means that actions are taken on selected objects. Objects to be acted on are highlighted. A block of text, frames, files, directory, etc. may be highlighted using a mouse or the cursor keys. A verb may then be specified by pressing a key or choosing a menu to determine the type of action to be taken on the object or objects. While the verb linguistic meaning is always the same (i. e. F8 is copy or F7 is move) its exact effect is automatically related to the type of object or even the meaning of the text that is selected.
F7 may start the move of a block of text, the content of spreadsheet cells or a file. The user then may navigate to a destination which may be in another document (or even a drive-based directory) and finishes the action by pressing the Return key. The action result is determined by the user's chosen destination. Moving a file by pressing F7 on it inside a hard drive cabinet and finishing with Return in a floppy drive cabinet will move the file to the floppy, but finishing the same key sequence inside a desktop frame will result in the file loaded and becoming a sub-frame. The function key, F8, may be used to copy a character, a block of text, a spreadsheet or database cell, as well as a group of cells, between frames, spreadsheets and databases just as it may be used to copy between files and directories, from a CD-ROM, to frames or drives and between network drives and floppies. Conversely, an outline section may be copied with F8 onto a floppy disk (instantly becoming a file), into another outline, into another section of the same outline, or to the desktop itself becoming a document frame. Since Framework interface is equally applied throughout, its spell checker and thesaurus as well as the rest of its word processing features are available for use in spreadsheets cells and databases fields just as in word processing text documents.

Framework presents the user with an object-based event-driven windowing environment, which acts as your desktop. FRED, an interactive interpreter, is active and available at all times to users. Status information about the current object, such as character and line number, number of columns and records, number of filtered records, the name or coordinates of the current cell and more is displayed in defined areas on the screen. The information is updated as the cursor is moved. This display update is mandatory and automatic making it available programmatically as well as allowing visually impaired users to follow cursor positioning, selections, and actions taken.
A DOS based vocalizer can be set to report specific information making tasks such as entering references when programming spreadsheet formulas a breeze. Indeed, another Framework feature is even more effective in helping spreadsheet programmers: cursor pointing. Framework's cursor pointing is available anywhere in formulas or text. It anchors the cursor to a location, then allows free navigation to cells, frames, or disk files, making the selected object reference appear in the anchored location. To make spreadsheet programming even more friendly spreadsheet cells may be referenced by their coordinates (e.g. B2, A5, F9) as well as by the text names at the top of the column and a row's first cell. A single keystroke toggles between coordinates and name references which are always visible on the status line.

Framework objects memorize access information. Information such as the last cursor position, selection of block of text, screen coordinates, and the home directory of a document is updated as a user action is taken. Framework's virtual tracking of user actions translates to a non-linear access in text, outlines, and cells. Simply put, when going into a document the cursor always lands in the exact same position it was on when the document was last visited or saved. And since Framework's outlining allows chapters, pages, and paragraphs of a single document to be maintained as individual frames, a Framework document may constantly and transparently maintain pointers to each chapter, paragraph and page.

For visual marking of text, aside from regular printable (bold, italics, underline, raised, lowered strike-through, and their combinations) Framework VII provides two non-printable styles (inverse and double-underline) allowing on-screen marking and emphasizing with no printing. These features, together with embedded footnotes and hidden codes which can contain large amount of text comes in handy when conducting group editing over a network or via electronic mail. Note, however, that Framework, while supporting proportional font formatting and printing on laser printers does not display the actual font on screen except for a full page preview.

Framework's visual full-function file system displays local and network drives as cabinets in which directories and files are shown as collapsible outlines. Files and directories can be created, copied, moved and deleted with the same general Framework actions.
Wild cards, filtering and automatic picklist-like file-seeking to files by typing their names are built-in. A Framework file can be loaded to the desktop as a document frame. It remembers its home directory and will be saved to it with a single keystroke. Framework provides automatic backup and mirroring, allowing a frame to be saved to two drives and to maintain up to nine previous file backups.
A document frame may contain any number of other frames, allowing numerous related frames such as Word processing, spreadsheets, databases, dBase-linked files, graphs, macros and programs which belong to the same project to be stored and saved together as a single file. A tray at the bottom right side of the desktop may hold a large number of document frames. Frames can be positioned and sized on the desktop. They can be viewed as collapsible outlines, or as window-like frames.

Frame labels may consist of large amount of text of which the first part is used as a frame's filename.

Framework is text-aware. Arithmetic and program expressions typed anywhere as text can be calculated and the result displayed at the cursor location; calculating 2+2 typed into a word processing document will result in =4 typed. Typing the FRED expression @sqrt(225) will type =15. Calculations of selected text may be done anywhere including inside a frame label, text area, menu input line, a telecommunication session or even in a filename while editing it. It can be used as a FRED debugger to caclulate FRED expressions in a FRED program, and can even evaluate local variables created in code selected by the user.

Framework provides a level of automatization and sophistication not found in other software. Its productivity tools include the ability to record on disk and retrieve text blocks at any location, token-based quick access to directories, a user hyper-text engine (which allows pasting and may be used to create tutorials and hyper-text documents, hyper-text-based users and programmers full reference for terms and functions of the FRED language), automatic filtering of databases, automatic linking to disk-based databases, automatic arithmetic calculation of selected regions in spreadsheets and databases, automatic outlining of flat documents (usually imported from other programs), cut and paste to and from a disk-based paste board allowing text sharing with Windows applications, virtually complete import export to and from other product including the latest Windows word-processors and HTML file format, network and stand alone email, network-based file and record sharing, and many other general productivity tools too numerous to mention. Framework provides sophisticated database reporting together with spreadsheets and database consolidation.

Compatibility with indexed dBase files allowes access and reporting from very large databases. Framework's mail-merge is probably the most powerful and user friendly mailing manager on the market. It allows dynamic record-based decision making with text construction and font customization.

Database records may be linked to disk-based files allowing attachment of multi-document frames to individual records in large databases. Some other unique tools are automatic conversion of numbers typed anywhere in text between decimal, hex and binary numbers. Conversion of phone numbers to touch-tone 10 button codes for performing touch-tone based stock transactions. Calculations of dates typed in text allowing addition and subtraction of periods as well as revealing date information such as day of week.

Also available is a pop-up calendar allowing date insertion into text, an appointment calendar, ASCII chart with character insertion, translation of numbers up to 15 digits long to words, and more. This functionality is available to the user merely by typing in text and pressing a key or choosing a menu item. FRED language functions can be used to produce output in a variety of formats including DOS/Windows files and telecommunication data-stream. All the above functionality is also available to programmers as FRED functions. Framework's telecommunications capabilities include menu driven modem setup, file and text transfer with an integrated telecommunication session, and programming capabilities with functions which allow modem control and I/O processing. Typical usage of Framework telecommunications include Internet shell access, BBS access, terminal emulation, remote control via modem and null modem, as well as handling serial input from external devices (e.g. GPS receivers). Framework has its own email system which may be used over a network or between stand alone computers via regular phone lines. It is typically used for EDI communications.

Framework VII runs under DOS in real or virtual mode. The current version is tested on DOS 6.22 and all versions of x86 Windows, Novell Netware, OS/2, Apple Macintosh Power PC using Insignia Soft Windows, NeXTSTEP using Insignia Soft Windows, a number of Unix DOS emulators, Novell DOS 7, and earlier DOS versions dating back to DOS 3.0. For normal performance of Framework, especially under Windows, a 80486 computer with minimum speed of 66 megahertz and a math co-processor is recommended. Hard drive, network access, or another non-linear virtual memory device such as a flash-card is required for all installations.

A full installation of Framework requires between 2 to 30 megabytes of disk space. Framework is available in a number of versions and configurations, all transparently compatible using the same file format from hand held 16-bit XT compatibles to the fastest Pentiums and Athlon AMD computers. A special installation of Framework allows it to run utilizing a storage area of approximately one megabyte making it possible to provide a full business functionality from a ROM or flash memory based system.
(c) Copyright 1996, 2001 Selections & Functions, Inc. All rights reserved.