Virtue 0.3

Virtue is a mathematical processor shaped after ideas from APL, mathematics and other language systems. Its final aim is to implement the "knowledge" of mathematics and other related areas in a simple and consistent framework.

Virtue is a vector/array 'processor', with a RPN programming language. The Virtue 0.3 language (Virtue 0.3 is presently being developed towards n0.5, presently at n0.41.9!) is based on an approach of defining an "Extremely Complex Instruction Set Computer", actually a programmed processor, and is provided with a large set of WORDs which operate on scalars, vectors and arrays (similary to the APL programming language). Virtue sentences are, however, not syntactically complex as many computer languages are (including even APL), but is, as a RPN language, more along the lines of Forth, Postscript and HP RPN calculators.

Virtue is, inter alias, provided to be a "Grid Service Library Application", i.e. an Application whose primary intention is not to be used by itself, but to be used as a kind of "processor", which enables specific complex processing to be done by providing it with reasonable simple requests. As such, Virtue can be used in "batch" mode on modern day grids, submitting Virtue for execution with the Virtue programme as its input data, and getting the processed results back in simple alphanumeric form.

Virtue can, therefore, in addition to the usage as a extremely complex calculator/processor, when used interactively, be directly used by a Grid "Driver Application" to provide full mathematical model processing.

For more on Grid Service Library Applications see the Abstract Parallel Programming and Multi-Cluster Execution Using 'Grid Library/Service Applications'.

The Virtue 0.3 Language

Please check the abovementioned Virtue 0.3 language description before testing Virtue. To exit the system, type the sentence: OFF.

Testing Virtue

For testing purposes, the newest version of Virtue 0.3 is always available at telnet, Login: Virtue, no password (Sun-3, 20MHz 68020+68881, 24MiB RAM, SunOS 4.1.1), and at telnet, Login: Virtue, no password (Intel PC, 2 * 1400Mhz Pentium3, 1GiB RAM, FreeBSD 6.2-RC2).

There is also a VERY experimental WebVirtue interface, which allows the user to use a common simple WEB browser, with javascript, to get an iteractive on-line session to Virtue. This interface, developed by Goran Topich allows the user to have a text editing screen, a one line command interface and the Virtue output on the same page. Copy-paste your programmes from any other window. Remark: do not keep important Virtue sentences (i.e. programmes) in the WebVirtue window, as it will be lost between sessions.

WebVirtue is available at:

Download Virtue 0.3 / Virtue 0.4

Virtue 0.3 / Virtue 0.4 is also available for download as an executable for a number of systems. As Virtue is still in development, not all executables are the same version, up to date or even available. Please check the specification for each executable on the download page

HP RPN Calculator Trainer

Try the javascript implemented HP RPN calculator to get some feeling for RPN

Contact, comments, sugestions...

Please send comments and suggestions to Zorislav Shoyat (


The Light Art, ref.: Vukovar by night. ZorkoZorislav Shoyat's profile at LinkedIn