Visual Frameworks Inc.


Introduction  Papers  Contact
JetLetter PSL

Parts

A part.


Hierarchical Schematics

A sample of VF visual language.


Hierarchical State Machines

A sample of the state machine aspects of VF.


Introduction

Visual Frameworks™ (aka VF™) is a software architecting method and visual language.  The method creates concrete, strongly-typed software architectures through composition of concurrent software components.

Visual Frameworks is a language for expressing software architectures along with some of the inner workings of software components.

We have built practical compilers for Visual Frameworks, which compile the architectural syntax and semantics to executable code.

The syntax of Visual Frameworks consists of diagrams and diagrammatic components (boxes, lines, arrows, etc.). The architectural diagrams resemble electronics schematics, where parts (software components) are represented as boxes with "pins" and inter-part data paths are represented as "wires" (directional lines).

Wires carry "events" between parts. Events are simple data structures which travel in one direction only - no call / return protocol is used for inter-part communication.

Each part has, both, an input API and an output API. Parts receive events on input pins and produce events on their output pins. Parts have no knowledge of where input events come from nor where output events will go. All event routing is specified (at compile time) as "wires" on the enclosing "schematic".

The Visual Frameworks method has a number of interesting properties:


Papers

ECLM 2009 Demos

A standard LispWorks GUI which displays one of three images and will be used in the demos below.


A simple VF wrapper for the GUI, which converts it into a reactive software component.


A simple schematic containing the wrapped lamp plus a state-machine-based controller.



Replace the controller part to produce a 3-state lamp.


Replacing the controller with a more complicated controller employing a hierarchical sub-machine allows separation of on/off functions from intensity selection.


A more complicated GUI example showing banks of eliding buttons and a canvas that tracks the mouse and deposits (emacs-like) "marks" when the mouse button is pressed.


The simplest demo of VVDDP (visual variable data document production).


Setting properties for text.


Wrapping text around an image.







Contact Information:


5 Bowness Court
Toronto, Ontario, Canada
M9B 5Z8

Paul Tarvydas
tarvydas@visualframeworksinc.com
416-410-5478

Norm Sanford
nsanford@visualframeworksinc.com