Another language - why not an Xbase dialect?

We don’t have an xBase language in the stable. I’ve just finished building Harbour on Linux and it also runs on Windows. What we’d name it is up for grabs at the moment. There are a number of xBase (| XBase | xbase | Xbase?) implementations: Harbour, xHarbour, X#, Flagship, Xbase++ and probably others.

1 Like

The XSharp people believe their implementation could be run on Exercism


  • The X# compiler is a DotNet process. Just like the C# compiler it can also run on Linux
  • Programs compiled with X# can also run on Linux. Either on Mono, or with .Net Core and .Net 5 or later.
    So yes, it can be offered as language on Exercism.

- Robert as stated on - Lurking

Greetings Everyone,

Fantastic to see interest in xBase !

I actually put together an Exercism prototype, for Harbour (and two other legacy scripting languages), last year.

The motivation for doing this was to have an easy, non-stressful way to relax by implementing exercises (this is actually my prime motivation for using Exercism, to relax).

Strange as it may seem, the reason I didn’t publish is that I simply did not have time to commit to completing another track. When work is private I find there is no expectation, therefore no stress; when public, the opposite is true. I still have to finish the Rexx track, and it is a source of some anguish that I have not done so.

I would be happy to collaborate on an xBase track if it avoids this work going to waste.

Over to you.

P.S. I will publish the other two tracks, 4DOS and DCL, to gauge interest in these.

P.P.S. I would like to recommence work on Exercism (probably start late next week), and will either proceed with the Rexx track, or the xBase (or other) if there is interest.


Ok, what’s an xbase language?


Start here.

Personal history: I started using the programming language side of dBase II in 1983. I’ve worked in dBase III, dBase III+, dBase IV, Clipper Summer '87, and Clipper 5.3. I did maintenance and development in Clipper 5.3 for a pharmacy here in Perth in the early 2000s.

I’m having difficulty downloading the Linux version of TCL (a language I used a lot between 1983 and 1985 while a student at NRCAE – now Southern Cross University – in Lismore, NSW.)

Does a Linux implementation of 4DOS exist?

(Looking with wonderment at your Harbour code). I really like the approach to testing, leveraging the database side. You’ve done Anthony!

Harbour already runs on the latest Windows and the latest Linux. What do we call the track? Some variant of “xbase” or “Harbour”?

What would be the pros and cons of going with the different implementations? It seems a few of us including me aren’t well-versed in these variants.

The differences between them all are slight as all have a common core language (Clipper). Harbour pre-dates many and that’d be one reason why i would favour it over other dialects, e.g. xHarbour (historically derived from Harbour). Harbour’s Linux support is active whereas xHarbour’s languishes.

Establishing user community size isn’t easy, but Harbour appears to be the more active.

1 Like

It was in the 80’s, when I was working with Borland Pascal and dBase products, some of which was military project applications.

Then somewhere in the early 1990’s I was on a radio show, they were promoting, I think it was Turbo Pascal and a re-work or repurposing of dBase IV.

Good memories, and I was active in the Bulletin Board Service scene those days.

Ok, what’s an xbase language?


So you likely saw my response to @glennj but just in case not, the Wikipedia article gives a good potted history of the language family. Then you could take a look at @ajborla’s sample repo and therein, examples of syntax for

most important differences between Harbour and xHarbour
with some references to Clipper and other compatible compilers like Xbase++,
CLIP, FlagShip.

Hi Bruce,

I mentioned 4DOS, but the product is actually Take Command, the Windows (32 and 64 bit) family implementation of the 4DOS product. Same scripting language, but with added improvements.

Not tested, but it should work under Linux within the Wine application.

Happy to work with you on this, or any of the other language candidates (if accepted). I just don’t have the time to do them on my own, beyond re-implementing the exercises in the prototype repositories.

For now, I’m running with the xbase given the work you’ve done and the cross-platform support for xbase. I have also just mooted the creation of an xbase track with the harbour community at fivetech. I’ve also registered a formal request to start an xbase track, calling it “Harbour”

No worries, whatever works best for you.

Hopefully the work done can be leveraged to help an xBase track be implemented fairly soon.

In the mean while, I hope to re-start Rexx over the next few days, and get that track implemented.