X2C supports a wide variety of code generation platforms and mechanisms.

Supported Technology

Code is generated using:

  • Excel versions: 2010, 2013 and 2016 (excluding Starter)
  • Programming languages: C#, C++ and TypeScript (experimental)
  • Math libraries (not included): NMath (C#), Boost (C++)
  • Generated web services use ASP.NET Web API

Mapping Structures

Spreadsheet cells can be turned into:

  • Individual variables
  • Functions/methods
  • Structures (classes)
  • Fixed-size or variable vectors
  • Matrices

Code Fidelity

X2C knows how to:

  • Perform expression optimization (e.g., introduce temporaries, inline exponentiation)
  • Perform aggregate calculations (e.g., sum, average) on diverse collections of objects
  • Fold repetitive operations into for loops

Object Construction

  • Global variables/functions kept in Globals class
  • Structures can be composed of variables, functions, vectors or matrices
  • Functions arguments include references to required structures