What Is Clarion
CapeSoft Accessories Logo

What Is Clarion?

CapeSoft Clarion News Accessories List Downloads

Clarion Programming Language

Clarion is a Programming Language and Software Development Environment developed and maintained by SoftVelocity. It has it's roots in a DOS product created in the mid-80s, which was moved to Windows by the same team responsible for Turbo Pascal. It primarily creates compiled programs for the Windows desktop environment but has also been extended to create web applications as well.

The Clarion language is similar to BASIC and Pascal in terms of syntax, but also includes support for Classes and Objects. It contains a number of unique high-level constructions including native support for window and report structures, and a backend-independent set of functions for data access. It is an easy language to learn and is quickly assimilated by programmers trained in other languages.

By treating Windows, Reports and Data as first-class elements of the language, it is particularly strong in business programs, which mostly deal with the collection, storage and presentation of data. It can interface to a variety of ISAM file formats (Btrieve, dBase, TopSpeed etc) as well as many SQL databases (MsSql, Oracle, Sybase, MySQL, PostgreSQL and so on.)

In addition to a business-orientated language Clarion includes a development environment that allows for very rapid code generation for common programming tasks. Because generated code can be mixed easily with hand-written code and because the generated code can be regenerated without losing the hand-code additions, Clarion takes full advantage of the benefits of code generation without many of the drawbacks associated with it.

The code generation layer makes use of Templates, and these templates can be created, extended and modified by developers. Thus every part of the system is under the control of the developer and every part can be changed and optimized as required. Indeed the way the whole environment is constructed allows for both radical customization and forward-compatibility at the same time.

A basic tenant of Clarion development is the need to make programs maintainable over large periods of time. Business programs typically have a long lifetime and it's not uncommon to find Clarion programs that are 10 years old or more and yet are still actively maintained and enhanced. By providing a framework that rewards consistency it becomes easier for programmers to maintain programs they did not write themselves and it becomes easier to add additional functionality to existing programs in a predictable and consistent way.

It is fair to say that Clarion is focused less on the technology of software and more on the business of software. The primary goal is to create programs economically which perform a task well and which are maintainable for a long period of time. Thus it is particularly well suited to small software concerns where productivity on a small budget is the biggest concern.

Not surprisingly, given the built-in support for extensions and optimizations, a large third party market for the language has developed. From simple feature extensions to radically different functionality many additional capabilities can now be leveraged.

CapeSoft Involvement

CapeSoft has been making add-ons (called "Accessories") to the Clarion Programming language for 20 years.

While the primary purpose of CapeSoft is creating software, we have had specific requirements for specific functionality along the way, and we have built technology to meet those requirements. As big supporters of the idea of re-usable code and because Clarion is specifically designed to make re-using code easy, we have been able to package this technology so that we can re-use it from one project to the next.

A side effect of this development approach is that the technology becomes available for use by other Clarion programmers. This has grown into a significant part of the CapeSoft business and we are now the largest supplier of Clarion Accessories in the world.

What Is Clarion