Show/Hide Toolbars

XSharp

The compiler and runtime have the following "special" behavior when compiling for the "Core" dialect.

Compiler

Does NOT allows 4 letter abbreviations of keywords

Allows the DOT ('.') operator to call Instance methods

Single quotes are used for Character literals

String Comparisons are mapped to the String.Compare() method in the .Net runtime

The String "=" operator is not supported

The String "-" operator is not supported

Anything that requires runtime support, such as the X# specific types (DATE, ARRAY, SYMBOL, FLOAT and USUAL) and dynamic memory variables is not supported

Supports the use of '@' to retrieve the address of a variable. This may also be used for REF variables if the compiler option -vo7 is used.

The '=' operator may be used for assigns but will generate a warning when used.

The compiler generated functions class is called

 Functions                        for normal functions and globals

 X$<ModuleName>$Functions for static functions and globals

Procedures cannot return values

Does not allow skipping arguments in method calls.

 

Runtime

The Core dialect does not require a runtime. However you can still link to XSharp.Core and XSharp.RDD and call methods and functions in these assemblies.