From EDM2
(Redirected from Arity Prolog)
Jump to: navigation, search

A Prolog development system from USA based Arity Corporation initially supplied in 1985 for DOS with a version for 16 bit OS/2 following a few years after.


These 16 bit systems were sold on a modular basis, you could start out by buying an interpreter, then add a compiler, SQL Server, expert system and so on. The Arity/Prolog system differed somewhat from their competitors offerings in that while it offered an interpreter it was primarily sold as a compiler allowing you to write and debug your applications in the interpreter and then deliver a compiled executable. Arity/Prolog also had a built in database system, this is not uncommon (and Prolog itself can be viewed as a database of sorts) but the Arity version had a slightly stronger version than usual and the company actually sold a SQL front-end to their database. But a database is also often used on PC Prolog compilers since this helps with compilation, instead of doing backtracking the compiler cheats by looking the value up in a database.

Unlike competitor Prolog Development Center, Arity choose not to change the language to facilitate easier compilation but rather provided a Clocksin and Mellish superset. This meant that while their compilers created faster programs than interpreted Prolog, it never managed to reach the speed of Visual Prolog but had a much higher compatibility with traditional Prolog software. However it was not fully compatible with "standard" Prolog and failed some Prolog compatibility and speed tests. This may have been one of the factors why the compiler module was re-written from the ground up for 32 bit mode.

Note also that there are 2 different versions of "Windows modules" that were sold for the 16 bit versions of Arity/Prolog. The more common one was an add-on module/library that allowed DOS and OS/2 text mode programs to have their own windowing systems not unlike what products like Turbo Pascal offered, and on the other hand Arity made a deal with Microsoft to deliver a version of their toolkit for version 1 of Windows: It does appears that a Windows compatible interpreter was delivered and later updated to support Windows 2.x and 3.x, but it seems to have only limited if any predicate support for Windows development proper, being more of an alternative to a text window.

In 1992 the company delivered Arity/Prolog32 a version of the original package for 32 bit OS/2. While most of the toolkits and libraries were based on the older 16-bit version the compiler and interpreter were new developments with better compatibility with standard Prolog and not fully compatible with the older Arity/Prolog version 6 for 16 bit DOS and OS/2. But it no longer used the database as part of the compiler and despite that managed to be two to five times faster than the 16 bit version, it also featured a new ALINT static checking utility, although this was strangely enough compiled with the older 16 bit compiler which later created problems with the Windows version and 64 bit OS's.

There was a new Presentation Manager based debugger and most of the limits that had plagued the 16 bit versions had disappeared. There were no longer 64k limits on stack sizes nor limits on the number of atoms, programs could now be multi-threaded and the compiler even supported multi-processing. However unlike previous versions the 32 bit versions of Arity have no windowing or PM predicates whatsoever, not even a version of the text mode windowing facilities supported under the 16 bit versions is supplied. For development of graphical interfaces the company provided bindings to the IBM C Set/2 compiler although by the time version 1.1 of Arity/Prolog32 hit the ground these bindings were generic enough to support any tool for development of front ends, be it a C, C++, Pascal, Modula, etc. or even GUI generators and case tools. However the toolkit did include limited support for SOM bindings.

It got excellent reviews and word on the street was in general very positive, however it was not sold in a modular fashion as the older version but was only available as a "bundle" that retailed for USD 2450 was supposed to include a version of the package for the then new Windows NT. However the Windows version did not turn up until 1995 when version 1.1 were released making the compiler bundle effectively an OS/2 tool only, but at a price almost 5 times of what the company was changing for similar bundles for 16 bit OS/2 and DOS, this made sales of Arity/Prolog32 extremely limited. To put this into context, competitor PDC supplied a 32 bit version of their product slightly later than Arity but at the same price as their 16 bit product and a little later they came up with Visual Prolog which did not only include Windows and Presentation Manager predicates but a full GUI RAD and support for DOS, 16 bit Windows, 32 bit Windows and 16 & 32 bit versions of OS/2 all in one package, for a price less than the Arity/Prolog DOS package alone.

Despite re-factoring their prices when they released version 1.1 of Arity/Prolog32 to selling the Windows and OS/2 compilers separately at 650 USD, sales momentum was completely lost and even the Windows NT/95 version moved only in a very limited fashion, even the decision to readjust the prices left a bitter after-taste in the mouth of those that had only previously paid more than 4 times that for the same toolkit, in the end due to limited sales version 1.1 turned out to be the last version released on any platform and the company started to sell solutions based on their Prolog compiler rather than the compiler itself. for the last few years the company operated the Windows executable was made available as a free download from the company's homepage.

In 2012 one of the original founders of the company announced that the Arity/Prolog package would be available as a free binary download from his homepage and in addition the source code would be made open source and available under the MIT license and to facilitate that he even opened up an account on one of the popular source code distribution sites for the package. However neither the binaries nor the source code has actually shown up in the intervening years.


  • Latest version for OS/2 and Windows: v.1.1 - 1995
Retail price was USD $650 for each platform, USD 350 for upgrades from any earlier version 16 or 32 bit.
  • Version 1.0: Initial 32 bit OS/2 version. - 1992
Only sold as a "bundle" for US$ 2450 for the OS/2 version + Windows NT version, however no Windows version of v1 ever surfaced, v.1.1 was the first and only version shipped for 32 bit versions of Windows.
  • Last known version for 16 bit OS/2 and DOS: V6


License and status

  • Commercial software - Discontinued


Related Articles