The Jazz Project - Overview Of Jazz Elements

Jazz elements fall into two major groups, GUI elements, and fundamentals. Viewers to inspect content, and a number of supporting GUI elements, are also used by the Twin utility, and other stand alone components. Detailed documentation is given in the Twin reference pages. This document presents an overview of the Jazz Environment, and a detailed guide and reference for the fundamental elements:

  • Files - system files, URLs, network locations, streams/filters
  • Content - text, encoded text, image, html, xml, MIME types, bytes
  • Values - numbers, strings, true and false
  • Expressions - identifiers, operations, constants, evaluations
  • Lists - lists, arrays, associative arrays, sublists
  • Actions - methods, macros, aliases, code expressions
  • Operations - assignment, operators, strings and lists
  • Names - scope, grouping, name completion, builtin
  • Commands - statements, syntax, system commands, jazz commands
  • Patterns - regular expression matching
  • Filters - pipelines, simple filters, custom filters
  • API - Java methods, builtin methods, scripts, extensions
  • Properties - user preferences, element attributes

The Jazz model is to read commands from a composition pane, and perform an action when a logical statement has been interpreted. Messages and data produced by that action are displayed in view panes, according to content type. Normaly text output is directed to a continuous scroll pane. User preferences or actions can designate where to place the content. Any compatible view pane can be used, a split text pane for text, a new window, or a new page in an existing viewer, typical for image or HTML content.

The basic content viewers are text, image and HTML. The standalone Jazz utilities use the same viewer components to display content. The Jazz environment simply makes these components programmable, using the Jazz Programming language, a full featured language designed for quick results, with many of the capabilities of C, Java, Perl, and sh. Context sensitive name and syntax completion, record and playback, and snapshots are among the many features that enrich this interactive programming environment.

Here are a few examples of Jazz statements:

 mkdir input output

 average population = population / 50

 fext = fname % "."

 fparts = pathname / "/"

 name = fname >> '.*'

 size = table.length

 entry = table(key)

 pathname = fparts * "/"

 message = "Found $(entry.name)"

 @root = elementTable(0)

 output = $(sort $fname)

More Jazz ...

More:

Jazz Topics:

Java Jazz Web Unix Help Etc.