Jump to content

Talk:Clarion (programming language)

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Riebens (talk | contribs) at 14:07, 30 December 2006. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

This article seems like a big marketing attempt. It feels like it was all written by someone trying to sell me on the language and related products. To make it more objective, someone should include perhaps some criticisms or shortfalls of the language, major users of it, etc. --unsigned posted by User:71.213.114.125 July 2006

Probably becaause most postings are made by users of the language who happen to think it's better than most other languages for many applications. However note in the article the comment Not so mysteriously, TopSpeed elected to skip the dreaded version number three - which in fact was so bad that I stopped using the language for some time. Nevertheless they recovered from that disaster. --Brat32 19:45, 27 July 2006 (UTC)[reply]
Another consideration is the amount of third party support for Clarion. There are abundant add-ons which extend the language functionality by adding templates and features. Because of this, and because Clarion is somewhat of a niche language, this article has numerous external links. I might agree, that if the same were to be applied for Visual Basic, for example, it would be unnaceptable, and would result in a mass of spam links which would have to be removed. At this point, it seems to me that the number of links is still justified. --Brat32 20:29, 27 July 2006 (UTC)[reply]
I don't know if there were substantial changes since this original comment about the POV was made, but it still reads a little biased in my eyes so I've placed {{POV}} on the article. —Locke Coletc 20:33, 25 December 2006 (UTC)[reply]

As a user of the Clarion programming language for more than 15 years (and previous user of dBase, Clipper, FoxBase, FoxPro, Powerbuilder, Symantec Enterprise Developer and various dialects of BASIC, not to mention Z80 and 8086 Assembler, for more than an additional 20 years) the Clarion page is in my mind fairly neutral. Granted there are not a lot of Clarion developers in the world, especially when you compare it to the populations of other developers, but in large part this is due to the fact that the various entities that have owned the language over the years have simply failed to market the product successfully.

Yes, the product does have it's warts, what product doesn't? The major drawbacks to the current version are: lack of a 32 bit development environment that allows design time expression of OCXs or other COM components. The 16 bit development environment does not allow the developer to work on more than one application at a time and restricts certain functionality through the use of system modal windows. There are also limitations to the number of controls that can be populated on a window due to constraints imposed by memory pool size relative to 16 bit architecture. In light of the release of Windows Vista, the Clarion help system is .HLP (WinHelp based) and will not be able to be displayed since Microsoft has eliminted support for the .HLP file format in Vista.

Most of the problems with the existing product appear to stem from poor management of the company that owns the product rather than the language itself.

On a more positive note, the Clarion template language allows developers to customize the fuctionality of the development environment by generating any kind of source code the developer desires, provided they wish to write templates to do so. There are currently templates available to output ASP, PHP, and Clarion source. Other developers have also embarked on open source template projects to output Perl, Java and C++ for compilation and execution on other platforms besides Windows.

Most developers who use Clarion, including myself, prefer to take advantage of the power of the template code generation functionality as opposed to writing Clarion language code in an editor. The primary reason for this is that code generated by the templates has the distinct advantage of having been 'pre-tested' in many thousands of applications by many thousands of developers since the release of Clarion for Windows in October 1994. This provides a very tangible advantage over writing code in other languages (or writing Clarion code by hand) as the software development cycle can be exceedingly abbreviated since template generated code can be trusted to work the same every time it is generated.

Also, although there are other code generation technologies available for other development environments, in nearly all other cases the developer can only take advantage of code generation in a project one time. Clarion allows you to generate code for your product throughout the development life-cycle without overwriting or destroying any modifications made to the generated code by use of what are called embed points within the template / application generator interface.

From the standpoint of the pure Clarion language itself, Clarion code that was written in the Clarion Professional Developer (DOS based product), especially code for batch processing, can easily be ported to Windows with an astounding 95 percent compatibility. The language itself is very syntactically simple and at the same time very robust in its functionality. Most of the changes between the DOS based versions of Clarion and Clarion for Windows had to do with the user interface statements to define display structures and event loop processing, known as the ACCEPT loop, to handle the processing of the controls on the screen.

Unlike other Windows based programming languages, Clarion (right out of the box) allows you to code, compile and link fully stand alone, royalty and runtime free executables (including DLLs), not dependent upon any Microsoft components (aside from operating system functionality) which can connect to virtually any kind of data file: ASCII, CSV, Binary, 2 proprietary Clarion file formats, .DAT (native Clarion) and .TPS (Topspeed) as well as ODBC SQL (and native, accelerated drivers for MS SQL and Oracle), ADO, XML and others. This lack of dependence upon Microsoft components also eliminates the dreaded 'DLL Hell' scenarios that so often appear when using Microsoft development tools.

The best way to describe Clarion development is that it is 'data-centric' and 'database-neutral' in that the development paradigm is focused on the structure of the data first by virtue of the Clarion Data Dictionary and then by use of the Clarion Application Generator and template set (Clarion legacy or Clarion ABC) to effect the presentation of the previously defined data structures. The reason this paradigm is so successful in developing business applications is because business applications are focused around data and development using other software languages tends not to focus on data structures but upon the presentation layer instead.

The 'database neutrality' comes from the fact that by using the replacable Clarion database drivers you can connect to virtually any type of data file and use the same data file access commands in the Clarion language to access the data. This helps to eliminate the confusion developers might face if they move from an ISAM based data file to one of the SQL RDBMS systems. In Clarion code the commands to retreive the data would be the same in both cases. The database drivers automatically translate the Clarion file access commands to the appropriate native commands to access the actual data.

Many languages have come and gone, Microsoft has changed the Visual Basic (more than once) in such ways as to 'break' existing code, file formats have come in and out of favor, but the Clarion language (and related development environments) has stood the test of time for more than 20 years. That's a long time for a development language to be consistent. Bruce Barrington was visionary in his creation of the language and the expression thereof. BenEBrady 15:44, 29 December 2006 (UTC)[reply]

I am very surprised, and then again NOT, to find this article POV'd. Clarion as a language and as a means of earning a living, has always had very emotional and negative comments from ex-Clarion users and non-Clarion users.

I thought the article was a nice description of the Product, the Language and the Loyalty inspired by the Clarion phenomena. The harder you love, the bigger the hate when the love wears away.

The following comes from the document : WHY CLARION, A layman’s guide to the merits of Clarion for Windows Published on 11 July 2003 by Topspeed Corporation

…and holds mostly true till this day….

Clarion developers love the Clarion language. It is easy to learn, easy to write, and easy to read. Concise but clear, simple yet powerful. The Clarion language was designed specifically for writing Windows Business Programs.

Clarion is the only Windows language with built-in support for database access. It is the only Windows language with built-in support for printing reports. As amazing as this sounds, Clarion is the only Windows language with accurate business math. In fact, Clarion arithmetic produces perfect results of up to 31 decimal digits without introducing rounding errors.

Whether you are a Programmer, Information Systems Manager, Consulting Client or a Development Executive, Clarion for Windows™ is the most efficient, professional and economical solution in the marketplace today!

As only Clarion users can really tell you the truth about Clarion, and as the user User-71.213.114.125 requested:

I am a Business Owner with 27 Software Products in the Agricultural, Financial, Logistical and Military environments. These Clarion Developed Products are up to 18 years old and others that are less than a year old, and they all still makes me money, satisfy my customer's needs and are easy to maintain and upgrade with changes in technology, environments and customer requirements using only 3 programmers.

I have played with many other development products that came along, new languages and other RAD Environments, but my only Commercial RAD Environment stays the Clarion RAD environment as it allows me to develop and release projects nearly faster than the ink can dry on the contracts.

I know BenEBrady – he is a well respected Clarion Developer, I am a Certified Clarion Developer, but I don’t know User-71.213.114.125 and I don’t know User- Locke Cole, both of whom objected to this article. If I knew their backgrounds and expertise, I may be able to better respond to their objections to this article.Riebens 19:09, 29 December 2006 (UTC)[reply]

The article is not only biased it is inaccurate. Clarion is a 3GL, general purpose imperative programming language. SQL and ADO are not data base formats. There are a couple of other problems with the text. The first comment about the article being a sales pitch is fairly accurate. Dennis E Evans 01:52, 30 December 2006 (UTC)[reply]

Maybe we should split the language from the development environment, both of which are referred to as Clarion. The Language may be 3GL, but the Clarion Development Environment is definitely 4GL.

PLEASE read the pages on 4GL languages http://en.wikipedia.org/wiki/4GL and on http://www.soi.city.ac.uk/~tony/dbms/4ges.html. Any 4GL environment will have 3GL aspects to it, especially in the language part where the abstraction is already at a very high level.

The mention of SQL and ADO ad database formats is definitely wrong. This should be fixed to indicate data access languages and/or objects.Riebens 14:07, 30 December 2006 (UTC)[reply]