CIDER Monash University
Clayton, Victoria, Australia

Smart Diagram Environments

Smart Diagram Environments (SDEs) are software applications that use structured diagrams to provide a natural visual interface that behaves  as if the computer ``understands'' the diagram.  Unfortunately, despite their potential usefulness, SDEs are not easy to build. This has motivated the creation of CIDER, a Java toolkit for building SDEs which greatly simplifies this task.

What is CIDER?

CIDER is a generic component-based system which is designed to be easily embedded in Java or C applications. It provides automatic interpretation of diagrams as they are constructed and manipulated, structure preserving manipulation, and a powerful transformation system for specifying diagram manipulations and user interaction. CIDER's main innovation is its component-based approach to SDE development which provides substantially increased architectural flexibility to the application programmer.

Version 0.3.1

This version of CIDER is capable of generating automatically a C wrapper for the interpreter generated by CiderCompiler.

Version 0.3.0

  • Javadocs for this version.
  • Reference Manual for this version.
  • An example application: a simple FSA editor. (Includes instructions on how to create and run the application.)
    Note that the grammar for the simple example application is based on the one described in the tutorial of the reference manual, although in order to allow for better user interaction, there have been some additions and modifications.
  • Another example application: a more complex FSA editor. (Includes instructions on how to create and run the application.)
The CIDER Toolkit is freely available under the terms and conditions of the GNU General Public License (see the Copyleft web page for further information).

The CIDER Compiler makes use of the Xerces Java Parser to process XML documents, which is software developed by the Apache Software Foundation. (Note that this is included in the CIDER Compiler JAR file and does not need to be downloaded separately.)