DEV Community

Bruce Axtens
Bruce Axtens

Posted on

XSharp, Bandol 2.10 release

A few years ago, Clipper was my bread and butter language. First Summer '87 and then Clipper 5.2. This was back in the days before Windows was invented. MSDOS ruled.

As Windows came into its own Clipper slowly disappeared and other things like FoxPro were developed. Eventually Microsoft gave up on FoxPro in favour of other languages and tools. There are other xBase languages out there still (e.g. Alaska Software's XBase++ and the open-source Harbour and xHarbour projects.) However, there hasn't been much happening for dotnet until fairly recently when XSharp arrived.

In April 2015 a group of concerned customers and some members of the GrafX development team have talked about starting a new open source project to give the xBase language for .NET a new future. This initiative is called XSharp. This was partially inspired by the fact that Microsoft has published the source code to its C# and Visual Basic compilers under an open source license (.NET Compiler Platform "Roslyn"). The plan is to create a new development language (compiler, runtime libraties, IDE, tools) where the compiler is partially based on the Roslyn source code.

The Core language is an xBase language version of the Microsoft C# compiler. It has the same features as C# 6, but will of course use the well known xBase syntax.
Based on this core language compiler different flavours have been created with support for the data types, classes and objects that make each dialect unique.
The Core language is able to produce .NET assemblies that run under windows, but also "universal apps" that run under other platforms as well. .Net Native support is planned as well.

I haven't had much opportunity to do anything constructive with this implementation of xBase. I've installed it and written a few simple things with it. It certainly looks promising.

Disclaimer: I have no connection to the makers of XSharp. I'm just looking wistfully at a language that I used to enjoy using and earning real money with.

Discussion (0)