Coming Thursday (January 27th) we will have an online session in which we will try to explain the RDD system. Some of the topics covered are

  • The Architecture of the RDD system
  • Classes, Interfaces involved with the RDD system
  • The RDD system and the Macro compiler
  • The RDD system and Multi Threading
  • Logging RDD operations with the RDD events
  • Extending the RDD system

The session will start at 16:00 Amsterdam time (CET, GMT+1) and we will be using Zoom for the session. The recording of the session will become available in our Youtube channel.

 


Today we have released an installer for XSharp Cahors 2.109 which contains some fixes for problems reported with X# 2.9, and some new features, including Visual Studio 2022 support.

The what's new document describing all the changes can be found here:

{rsfiles path="fox/Compiler/XSharpSetup2.10cFox.zip"}

 A public installer for version 2.10 will be published in the coming weeks.

To celebrate the release of X# 2.10 we have now a special offer for new subscribers:

If you use the discount code X#210 when buying a FOX subscription in our online shop you will get a 30% discount.
This discount code is valid until Feb 28, 2022.

 

 


A short message to inform you about our progress and the upcoming 2.10 release.

The first 2.10 version (with VS2022 support) has been tested by a small group of customers.
They have reported a few issues and a second build that fixes the issues has been released to them today.
We hope to be able to release this build to the rest of the FOX subscribers next week (week 3)

A public version of X# 2.10 should then be released one week later (week 4).

We are also working on our development Roadmap for 2022. More news about that in a few weeks.
But it will be no surprise that the following items will be on the list (some of these were promised before):

  • VO GUI and SQL classes based on Windows Forms and Ado.Net (these are almost done)
  • Improved FoxPro compatibilty with a FoxPro converter
  • Support for .Net Core / .Net 5 and .Net 6
  • Some new language features from C# 10, such as GLOBAL USING and File Scoped Namespaces.
  • Our projects codenamed 'Delft' (short term FoxPro SQL support ) and 'Xanthi'
    (Long term hybrid SQL/Table based data access  support with a client server solution like ADS)
  • Continued work on bug fixes and language enhancement

Finally we are planning to do a session about the X# RDD system on Thursday Jan 27, 16:00 CET (GMT+1).

Stay tuned !


A short message close before the end of 2021.
We are finalizing a new build (X# 2.10). The installer is being tested in the team at this moment and will be made available to a selected group of testers next week.

Some of the highlights of this new build:

Compiler

  • We have added 2 new compiler options: /enforceoverride and /noinit 
  • Functions and procedures (including the Start function) now support the ASYNC modifier
  • The compiler detects if you are using String2Psz() to initialize something that is not a local variable and produces a compiler error. This does not work !
  • and more

Visual Studio integration

  • Support for VS 2022 (in 64 bits mode)
  • Support for Nuget Package References
  • We have added some "lightbulb" messages to the editor
  • Automatic insertion of XML comments when you type "///"
  • Improved formatting in the editor
  • Many fixes and small improvements

Runtime

  • Several changes to the DBFCDX and DBFNTX driver to make these faster in shared mode
  • Many bug fixes

The (preliminary) what's new document can be downloaded from the page below.

 We wish everybody the best for 2022 !


Coming Thursday (December 9th) we will have an online session in which we will try to explain what X# compiler does with your code. We will discuss several topics, such as

  • Strong Typed versus weakly typed functions / methods
  • Different calling conventions (Clipper - Strict - Pascal - Thiscall)
  • Function / method overloading
  • Values types versus reference types
  • Parameters by value and parameters by reference
  • Early bound code versus late bound code
  • Virtual instance methods versus non virtual methods

The session will mostly use code from the XSharp Runtime as example and will look at that code from the Xbase side but will also look at the produced IL code using the ILSpy decompiler. We will also discuss 'ease of use' versus 'best performance'.

Update We have re-recorded the session. Is is now available in our youtube channel

The example can be downloaded here:

{rsfiles path="Presentations/WhatDoesTheCompilerDo.zip"}


We have uploaded a first version of our support for Visual Studio 2022. This also includes support for packagereferences inside the project file.

Known issue: the intellisense engine does not yet include the assemblies that are listed inside a nuget package.

For example: if you have a Console application and remove all references and replace that with a Nuget Package reference for System.Runtime then that project will compile and run, but the editor will not be able to show tooltips, code completion etc for types like System.String, System.Console etc.

You can find this installer here:

 

 


Today we have released an installer for XSharp Cahors 2.9 which contains some fixes for problems reported with X# 2.8, and some new features, especially in the FoxPro compatibility area.

The what's new document describing all the changes can be found here:

{rsfiles path="fox/Compiler/XSharpSetup29aFox.zip"}

The public installer for version 2.9a is now also available:

{rsfiles path="installers/XSharpSetup29aPublic.zip"}