Eye of HorusHeader

Clarity Programming

   
   

Information

Overview

Clarity is a schematic functional programming environment that allows you to design and implement programs by drawing them. The picture below shows an example of the hypotenuse function as defined in Pythagoras' theorem.

Hypotenuse

The Clarity environment allows you to draw your programs and then run them. The drawing is called a 'schema' and appears like a dataflow graph where data is processed by functions and passed onto other functions for further processing. You select the functions from an extensive library and link them up with arrows. The final result is another function which you can add to the library. All this is done within a friendly environment which guides you through any difficult design processes.

Behind the scenes, Clarity converts your design drawing into the interpreted functional functional database language FAITH. This has the advantage that no additional database is needed and with advanced pattern recognition features built-in, complex recursive queries can be handled. Using your own DLL's written in for example C, C++, C# or Fortran, Clarity may be extended to suit any purpose such as communicate with other programs or act as a HTTP server.

Using the network windows of Clarity, various code views can be made. Additional emphasis may be given to function groups by using different colours and different sizes. With quick access to every function by simply double clicking on it, navigation is made easy.

Network Example

The advanced exporting functionality of Clarity allows you to easily share functions between programs. Clarity ensures that in addition to the selected functions, all elements needed to perform the functions correctly are exported. This guarantees the same functionality in the imported program as it had in the exported one.

The Clarity programming environment has advanced facilities for creating and maintaining technical documentation of programs. Every element in a function can be given a separate annotation. Using the see-through facility, annotation can be shared between various views simplifying any updating of documentation.

The Clarity programming environment uses the functional database language FAITH. FAITH is a weakly typed functional language meaning that some types are included and are dynamically type checked. Using constructors, additional types may be created. Clarity has many types built in such as: boolean, characters, integers, floats, tuples, lists and sets. This makes Clarity a fully developed functional programming environment suitable for any purpose.

Clarity Pro comes with a Query kit. The query kit is a module that can be linked to any other language and acts like a Faith Interpreter. Using the Query Kit, it is possible to embed Clarity programs into existing programs while gaining all the advantages by developing programs in Clarity.

Back to top>>

Advantages

Creating programs using the Clarity programming environment has many advantages over conventional programming and integrated development environments (IDE) such as:

  • Elimination of Syntax Errors
  • Model development in half the time with fewer errors (see .... for experimental data)
  • Built-in easy to use documentation system
  • Automatic impact analysis to maintain overall program consistency
  • Quick navigation through programs using function list, program tree or network windows
  • Advanced code importing and exporting facilities
  • Effortless refactoring of systems
  • Straightforward communication by conveying ideas with Clarity diagrams
  • Unique complexity management system with network windows
  • Environment fully compatible with rapid prototyping (RP) and extreme programming (XP) methods
  • Significant reduction in maintenance time
  • Suitable for programming without a keyboard (programming on notebooks, palm tops or mobile phones)
Back to top>>

Clarity Products

Clarity programming tools are available in three variants: Clarity Pro, Clarity Lite and Clarity Eye. Clarity Pro and Lite can both be used to create and interpret programs while Clarity Eye can only interpret. Clarity Eye and Clarity Lite are both freely available. For academic users, Clarity Pro is available at a reduced rate.

  1. Clarity Pro™
    The entire programming environment with all capabilities.
  2. Clarity Lite™
    A stripped version of Clarity Pro where all Input/Output functionality has been removed apart from several functions needed to communicate with users at a very basic level.
  3. Clarity Eye™
    An interpreter that allows you to run all programs created in either Clarity Lite or Clarity Pro but without the ability to create new ones.

Back to top>>

Product Comparison

The features of each individual product are listed in the table below.

  Clarity Lite™ Clarity Eye™ Clarity Pro™
Program Development Yes No Yes
Interpreter Yes Yes Yes
Dynamically Linked Libraries No Yes Yes
IO / Graphics / Maths Interfaces No Yes Yes
Networking No Yes Yes
Beginners Tutorial Yes No Yes
Advanced Tutorial No No Yes
Query Kit No No Yes
Telephone Support No No Yes

Back to top>>

 

Copyright 2001-2008© Clarity-Support Limited
Designed and maintained by Bart-Floris Visscher