Sunday, February 22, 2009

Harbour Does Support Multi-threading - Pritpal Bedi - 2009-02-22

CCH: on 22 February 2008, Pritpal Bedi, Harbour Developer posted an interesting entry in our Guest Book, which amongst other things clearly rebutted Xbase++ CTO, Steffen's assertion on 21 February 2009 that "As of today there is still no tool available in the market which provides that clean and easy to use way of multithreading"

He also documented his journey from CA-Clipper, CA-Visual Objects, Xbase++, xHarbour and finally to the Harbour Project.

Pritpal Bedi, 22nd February 2009

Hello Chee

Nice to see such an informative site to have upto-date information about trends and developments centering around language called "CLIPPER".

Developing mini-erp solutions for trade and indistry in general and for specific verticals, in Clipper, for over a decade, I recently have discontinued support for Clipper compilations for ever. Today all my applications are compiled with Harbour ( also with xHarbour for some specific purposes ) with a unique look and feel simulating Windows GUI.

In late 90s the demand for a visual uplift was more an more coming in,
Visual Object caught my attention and I tried my hands onto that. Alas! I failed miserably. Visual Obects was enforcing a new way of programming concept difficult to be accepted by one who has had invested a great amount of time and money on developing procedural code. More so, the procedural code was delivering what was expected. So I gave up after few months of frusration.

Then came
Xbase++, probably in 1998, and then I was filled with joy that this is exactly I wanted. Straight forward I subscribed to it, and continue to subscibe till date, though do not plan in the future. After few months I could convert my applications running on Xbase++. I was amused by the multi-threading modal and its capabilities to mix GUI and CUI elements on one screen. It paved the way for Clipper code to be migrated to Windows world. I was/is a dire fan of its XbpParts* class modal which implemented a standard way of objecthirarchy and parameters. I also put my applications in production sites but due to many technical difficulties I had to withdraw them and reinstalled Clipper compilations. I agree that those were the days when Xbase++ was evolving. I could hae concentrated on Xbase++ IF I could not came face-to-face with xHarbour...

My first attempts with
xHarbour were so rewarding that I could develop VOUCH32 library which could be used with Xbase++, xHarbour, Clipper ( not Harbour ). It proved to be very useful addon atleast for Clipper applns ( download statistics suggest that ). A journey started to port 16 bit code to 32 bits which was accomplished with little effort. But still everything was under debugging in the labs. An awesome contribution from Peter Rees ( GTWVT ) in Dec 2002 triggered my quest to provide Windows look and feel to my CUI applns. I could develop WVTGUI which gave my applns a new lease of life. I posted new technology to my clients by end 2003 which received a wide acclaim.

The journey continued. Though I could simulate Windows look and feel, but still I heavily missed multi-threading and multiple Windows support of Xbase++. Something I missed all those years.

In 2007 I turned to
Harbour. Ported all what I had contibuted to xHarbour and recompiled my applns. There I floated ideas of Multi-Threading and Multi-Windows which got momentum as I showed to the group its real benefits. Przemyslaw Czerpak, this great programmer, took to this challenge and introduced both concepts in a superb manner. I insisted on Xbase++ modal of Multi-threading minus its glitches which were taken care of in proper perspective. And the result is a robust MT modal which also implements Xbase++ functions and objects.

Recently I posted all my applications in production with Multi-theading and Multi-Windows, with a unique Windows look and feel and functionality, the source base being the same I used to compile with CLIPPER, just with addition ( not changes ) of few lines of code. CLIPPER is ALIVE as ever...

As Harbour and xHarbour are binary compitble projects, every development can be shared by both projects.

Somewhere on this blog I have read Steffens quote ;
"As of today there is still no tool available in the market which provides that clean and easy to use way of multithreading."

This is not true. Harbour is much more robust. But mind it, Xbase++ provided it in 1998 whereas Harbour implemented it in 2008, a generation-gap.

I must admit that at present Harbour ( in its core ) lacks a GUI component, a must for modern day requirements. To achieve this goal I have initiated development of WVG*Parts along the lines of Xbase++ Xbp*Parts, which by now, is shaping up well. It follows the Xbase++ class modal exactly it is documented. By now a simple Xbase++ application can be ported to Harbour with restricted GUI components, AS IS. Harbour may have a decent GUI in near future, who knows...

To sum-up I must say that the language "CLIPPER" we all loved most, we all earned our bread and butter for decaded, we all sweared-by, is

Pritpal Bedi
a student of software analysis & design

Born 04 June 1956 at a small town Karnal, a part of the then Punjab province
of the Sovereign Republic of India, attracted to software development only in
1989 at the age of 33 years. Authored VOUCH, the software grows with you,
a mini ERP solution based on Indian way of business protocols. Attracted to
xHarbour in 2002 and soon contributed to the Clipper community, Vouch32.lib.

Also he contributed to the open-source project xHarbour whatever small
he could do, major contribution being WVTGUI, a library to give a look and
feel of Windows application to a character based console application. This
he could do on the top of GTWVT, a contribution by Peter Rees.

And now, he presents Vouch32 ActiveX Server raising the barrier of languages
and version control. A Com Object completely written in xHarbour and
compiled with distribution.

Author is a Master degree holder in Commerce. Has served the banking industry,
has run a medium-scale retail business, and has achieved a little in
software development.

No comments:

Post a Comment

Welcome to Clipper... Clipper... Clipper

In 1997, then using Delphi 3, I had already created 32-bits Windows applications for HRIS, ERP and CRM. In 2007, using Ruby on Rails, an AJAX powered CRM site running on Apache & MySQL was created and I am now using Visual Studio .Net 2008 to create web-based projects and Delphi 7 for Win32 applications using SQL2005 & DBFCDX.

So, why then am I reviving the Original Clipper... Clipper... Clipper via a Blog as CA-Clipper is a programming language for the DOS world ? Believe it or not, there are still some clients using my mission-critical CA-Clipper applications for DOS installed in the late 80's and up to the mid 90's. This is testimony to CA-Clipper's robustness as a language :-)

With the widespread introduction of Windows 7 64-bits as the standard O/S for new Windows based PCs & Notebooks, CA-Clipper EXE simply will not work and it has become imperative for Clipper programmers to migrate immediately to Harbour to build 32/64 bits EXEs

Since 28th January 2009, this blog has been read by 134,389 (10/3/11 - 39,277) unique visitors (of which 45,151 (10/3/11 - 13,929) are returning visitors) from 103 countries and 1,574 cities & towns in Europe (37; 764 cities), North America (3; 373 cities) , Central America & Caribeans (6; 13 cities), South America(10; 226 cities), Africa & Middle-East (12; 44 cities) , Asia-Pacific (21; 175 cities). So, obviously Clipper is Alive & Well : -)

TIA & Enjoy ! (10th October 2012, 11:05; 13th November 2015)

Original Welcome Page for Clipper... Clipper... Clipper

This is the original Welcome Page for Clipper... Clipper... Clipper, which I am republishing for historical and sentimental reasons. The only changes that I have made was to fix all the broken links. BTW, the counter from is still working :-)

Welcome to Chee Chong Hwa's Malaysian WWW web site which is dedicated to Clipperheads throughout the world.

This site started out as a teeny-weeny section of Who the heck is Chee Chong Hwa ? and has graduated into a full blown web site of more than 140 pages (actually hundreds of A4 size pages) ! This is due to its growing popularity and tremendous encouragements from visiting Clipperheads from 100 countries worldwide, from North America, Central America, Caribbean, South America, Europe, Middle-East, Africa and Asia-Pacific. Thanx Clipperheads, you all made this happen !

What is Clipper ?

You may ask, what is this Clipper stuff ? Could Clipper be something to do with sailing as it is the name of a very fast sailing American ship in the 19th century ?

Well, Clipper or to be precise, CA-Clipper is the premier PC-Software development tool for DOS. It was first developed by Nantucket Corporation initially as a compiler for dBase3+ programs. Since then, CA-Clipper has evolved away from its x-base roots with the introduction of lexical scoping & pre-defined objects like TBrowse. As at today, the most stable version ofClipper is 5.2e while the latest version, 5.3a was introduced on 21 May 1996.

As at 11th November, 1996, an unofficial 5.3a fixes file was made available by Jo French. See the About CA-Clipper 5.3a section for more details. BTW, Jo French uploaded the revised 5.3a fixes file on 20th November, 1996.

Latest News

The latest news is that CA has finally released the long-awaited 5.3b patch on 21 May, 1997.

For 5.3b users, you must a take a look at Jo French's comments on unfixed bugs in 5.3b.

BTW, have you used Click ? If you're a serious Clipperprogrammer and need an excellent code formatter, Click is a natural choice. How to get it ? Simple, access Phil Barnett's site via my Cool Clipper Sites.

32-bits Clipper for Windows ?

Have you tried Xbase ++ ? Well, I have and compared to Delphi (my current Windows programming tool of choice), I'm still sticking to Delphi.

Anyway, you should visit the Alaska Home Page. Give it a chance and then draw your own conclusions !.

The Harbour Project

Is this the future of Xbase ? Take a look at at the Harbour Project

You are Visitor # ...

According to, you are visitor since 3 June 1996.

If you like or dislike what you see on this website, please drop me a line by clicking the email button at the bottom of this page or better still, by filling out the form in my guest book. If you are not sure what to write,click here to take a look at what other Clipperheads have to say.