Welcome

Welcome to the official website for Quartex, the Object Pascal and Basic research compiler suite!

Quartex Pascal (short: QTP) is an Object Pascal IDE, Compiler and development system. It was originally designed for research and development of the actual object pascal language itself – as an effort to influence and inspire the evolution of fourth generation Object Pascal;

QTP has since evolved into a more abstract project, one which facilitates research of transcoding technology and RTL design. It gives students the ability to see how the parser breaks down sourcecode into symbols, and further how logic is broken into a series of expressions. This is something that no other IDE offers. It now also includes the ability to compile basic code in the flavour of Visual Basic (more info on this below).

Quartex IDE early prototype

Quartex IDE early prototype

Transcoding technology

Transcoding means to translate sourcecode written in one language into another language without loss of features. Think of it as XML transformations, but for a whole language rather than a fixed set of data elements. So you write ordinary “Delphi” pascal and it compiles to Javascript, C# or C++. Transcoding technology is very powerful and famous products like Smart Mobile Studio, Microsoft TypeScript and Monkey X are all readily available transcoding technologies that demonstrate what can be achieved.

Examples of transcoding

Smart Mobile Studio is by far the most advanced transcoder on the marked – allowing you to compile fully fledged object pascal applications into pure javascript which runs in any browser regardless of platform. Something which by definition should be impossible since javascript lack any concept of types, classes, polymorphism, interfaces and var parameters. As of writing neither Microsoft visual studio or Embarcadero Delphi can offer transcoding anywhere close to what Smart Mobile Studio delivers. The transcoding technology in Smart Mobile Studio was written by Eric Grange, the maintainer of the DWScript codebase. The IDE and RTL was written by me.

Quartex Pascal

Quartex Pascal is not equal-to or in competition with Smart Mobile Studio (it was created by the same author). The motivation behind Quartex Pascal is very different from Smart, which is purely javascript and deals with the browser exclusively. Quartex Pascal picks up where the Smart Mobile Studio boundaries ends and represents a toolkit for future research. It is perfectly suited for writing large-scale applications, it even generates executables that you can run without the IDE, but the heart of QTP is exploration and experimentation with Object Pascal. The IDE is designed to be user-scriptable, user-definable and provides in-depth information about “how” a program is broken down into symbols, expressions, value references and ultimately, transformed into another language.

Is VCL or Firemonkey “the only way” to produce reliable, scalable applications using object pascal? Or could a different RTL design and vision serve us better?

Quartex Basic

While the IDE and core compiler is designed to compile Object Pascal into different languages (C++ being the primary candidate), Quartex has recently gained support for the Basic language. In short it allows you to create basic projects, much like Visual Basic, which is compiled into Pascal – which in turn is compiled into whatever language the Pascal compiler supports.

In short, if there is a code generator for C++, you will be able to write a basic application which ends up as a compiled, executable binary courtecy of the GNU C++ compiler (or any other C compiler installed on the system).

License and use

Quartex Pascal is written by and copyright Jon lennart Aasenden. Quartex Pascal is not freeware.

Advertisements