The Clarion Open Source Project

by Dave Harms

Published 1999-02-08    Printer-friendly version

Important Notice

Since this article was written CoveComm Inc., publisher of Clarion Magazine, has created the Developers Open Source Public License for use in Clarion-related open source projects. The LGPL referenced in this article is no longer recommended. All Clarion Open Source Project pages are now also available to the public.

You've probably heard the term "open source" bandied about, and you might be unsure as to its meaning, much less how it applies to Clarion programming.

Open source is a way of distributing software that goes back to the GNU* project, although the GNU folk like to use the term "free software" rather than open source. GNU stands for GNU's Not Unix, which is the sort of self-referential acronym you'd probably expect a bunch of programmers to come up with. That's the acronym; GNU itself is (or is intended to be) a "complete Unix-compatible software system."**

What, you say? Sounds like Linux? You're not far wrong. Although Linux is a separate effort in most respects, it has been developed under the GNU General Public License, which is one of the keys to the open source/free software movement. Linux is an amazing success story in that it's a rather complex yet stable piece of software created through what would seem to be an completely chaotic development model. Although there is an organization, and a driving force (Linus Torvalds), no one is really in control of Linux, in the usual way that a person or corporation typically owns and controls a piece of software.

Copyleft

Linux is a collaborative work. Developers all over the world contribute code, and modify other developers' code. Linux, like other GPL'd software, is copylefted, rather than copyrighted.

Copyrighting means that the author of the work reserves all rights to that work, so that no one can change the work without the author's permission. Copylefting means that the author gives anyone else the freedom to use, modify, or distribute the work, but only if they agree to keep the distribution terms unchanged, which means that their changes must be freely distributable also.

(Among other things, this means that Microsoft can't buy Linux. It isn't for sale. And Microsoft, or anyone else, can improve Linux and offer it for sale, but they also have to provide the source under the same terms as the original source.)

GNU and Clarion

Although GNU is a Unix-compatible software system, the GNU GPL can be applied to software developed for any platform. For software developers, the GNU license can be an effective way to exchange code with other developers to mutual benefit. Most Clarion programmers benefit from some sort of informal code exchange already. For instance, there are any number of free templates and source code examples available to Clarion programmers from a variety of sources. Many of these carry some sort of copyright notice. Few are covered by the GNU license.

One of the problems with the GNU GPL is that it was written with entire programs in mind, not parts of programs, which is what most Clarion developers are likely to make available. Source code libraries are, however, covered under the GNU Library General Public License, which has provisions appropriate for licensing code that will become part of a larger work, which may or may not be covered under a GNU license.

The Clarion Open Source Project

Clarion Magazine is initiating the Clarion Open Source Project (COSP) to encourage Clarion developers to put their freeware libraries under the GNU LGPL. Specifically, subscribers will have access to the following services:

  • Newsgroups for discussion of COSP libraries.
  • On-line documentation for COSP libraries.
  • Some level of task listing for programmers wishing to participate. This includes bugs to be fixed/features to be added/documentation to be written.

We believe the LGPL is an excellent means of fostering the development of quality free third-party products. Although anyone can place software under the LGPL, Clarion Magazine  reserves the right to choose which products are included in the COSP distribution. You'll know from the on-line documentation the current status of any given product, and you'll be notified of upgrades.

Everyone, not just subscribers, will be able to download the COSP libraries. That's in keeping with the LGPL, which states that any source placed under the license must be freely available.

To kick things off, CoveComm Inc. has released two classes, cciDebugClass and cciProfilerClass, under the GNU LGPL. At present there is almost no documentation included with these classes. Their functionality is as follows:

cciDebugClass

  • basic trace message capability (a method call to add a trace message to a log)
  • view the trace log in a window
  • view the trace log in a toolbox (so you can see messages as they are logged). Switch between tree and list view.
  • write the trace log to a file

cciProfilerClass

  • derived from cciDebugClass
  • uses the profiler hooks to automatically generate a procedure call tree (using tree view by default, but can switch to indented-text view)

You may also wish to view these classes to see how to put your own code under the GNU LGPL.

Download CoveComm's debugging and profiling classes

Both classes will be featured in articles in Clarion Magazine; cciDebugClass is currently scheduled for the middle of March.

COSP and Third Party Vendors

The Clarion Open Source Project is not intended to in any way be direct competition to vendors of third party products. Its purpose is to organize and improve the kinds of contributions Clarion developers have always made to the programming community.

If anything, third party vendors can benefit from COSP. Since the COSP distribution is freely available, anyone who wishes to can provide paid support for the products included in the COSP distribution (although you should keep in mind that the documentation in Clarion Magazine about COSP products is copyrighted and therefore not available for resale by anyone else).


Endnotes

* The G in GNU is pronounced, usually as a hard G. If you didn't pronounce the G, GNU would sound like 'new' and this would cause a lot of confusion as you tried to explain what you meant by the 'new' license or your 'new' compiler.

** GNU has been around for a while - the original GNU manifesto dates to 1983.


David Harms is an independent software developer and the editor and publisher of Clarion Magazine. He is also co-author with Ross Santos of Developing Clarion for Windows Applications, published by SAMS (1995), and has written or co-written several Java books. David is a member of the American Society of Journalists and Authors (ASJA).

Printer-friendly version

 
 

Search

 

Advanced Search
Topical Index

Related Articles

Subscribe to
ClarionMag

One year: $159

(reg $189, save $30)

(includes all back issues since '99)

Renewals from $109

Two years: $249

(reg $289, save $40)

Renewals from $199

More Info

Subscribe Now!

ClarionMag Blog

RSS Feeds

Updates via Email

Enter your Email


Powered by FeedBlitz

Quick Links