From Wikipedia, the free encyclopedia
Jump to: navigation, search
For the successor system from Microsoft, see Visual FoxPro.
Cover of the FoxPro 2.6 Developers Guide

FoxPro is a text-based procedurally oriented programming language and database management system (DBMS), and it is also an object-oriented programming language, originally published by Fox Software and later by Microsoft, for MS-DOS, Windows, Macintosh, and UNIX. The final published release of FoxPro was 2.6. Development continued under the Visual FoxPro label, which in turn was discontinued in 2007.

FoxPro was derived from FoxBase (Fox Software, Perrysburg, Ohio), which was in turn derived from dBase III (Borland), then dBase II (Ashton Tate). dBase II was the first commercial version of a database program written by Wayne Ratliff, called Vulcan, running on CP/M.

FoxPro is both a DBMS and a relational database management system (RDBMS), since it extensively supports multiple relationships between multiple DBF files (tables). However it lacks transactional processing.

Sold and supported by Microsoft, there was an active worldwide community of FoxPro users and programmers. FoxPro 2.6 for UNIX (FPU26) has even been successfully installed on Linux and FreeBSD using the Intel Binary Compatibility Standard (ibcs2) support library.

Version information[edit]

Operating system compatibility[edit]

Extant Versions by OS
Version FP 2.0 FP 2.5 FP 2.6
MS-DOS Yes Yes Yes
Windows 3.1 to XP Yes Yes Yes
Macintosh Yes Yes Yes
SCO UNIX yes yes Yes
Linux & FreeBSD yes yes Yes[1]
Windows 2000 No No Yes

Technical aspects[edit]

FoxPro 2 included the "Rushmore" optimizing engine, which used indices to accelerate data retrieval and updating. Rushmore technology examined every data-related statement and looked for filter expressions. If one was used, it looked for an index matching the same expression.

In addition, FoxPro2 was originally built on WatCOM C++, which had its own memory extender - at that time state-of-the-art. FoxPro2 could access expanded and extended memory, using almost all available RAM (DOS). It used some interrupts in absence of the extended memory driver: if no HIMEM.SYS was loaded, FoxPro enabled that mechanism.

Version Timeline[edit]

Version VERSION() returns EXE Size EXE Date
FPW 2.6a FoxPro 2.6a for Windows 2,444 kb 28 September 1994
FPM 2.6a FoxPro 2.6a for Macintosh  ? kb August 1994
FPD 2.6a FoxPro 2.6a for DOS 1,788 kb August 1994
FPW 2.6 FoxPro 2.6 for Windows 2.38 Mb 9 March 1994.
FPM 2.6 FoxPro 2.6 for Macintosh  ? kb 1993
FPD 2.6 FoxPro 2.6 for DOS  ? kb March 1994
FPU 2.6 FoxPro 2.6 for Unix 2.3 Mb 1993
FPW 2.5 FoxPro 2.5 for Windows 1.63 Mb January 1993
FPD 2.5 FoxPro 2.5 for DOS 509,013 bytes February 1993
FPD 2.0 FoxPro 2.0 for DOS 465.86 kb 1991
FPD 1.0 FoxPro 1.0 for DOS  ? 1989


  1. ^ using the ibcs files from the Linux ABI on

External links[edit]