Back
Microsoft killed FoxPro in 2007. An independent project just revived it
SiTech AI Team3 წთ. საკითხავი

Microsoft killed FoxPro in 2007. An independent project just revived it

FoxDev Studio, an open-source IDE and runtime, runs Visual FoxPro 9 applications on 64-bit machines with no conversion step, and adds lambdas and an HTTP server to the old language.

Microsoft ended development of Visual FoxPro in 2007, leaving a large body of business software running on machines that only get older. FoxDev Studio, an independent open-source project, takes a different route from migration: it runs Visual FoxPro 9 applications as they are. Its authors describe the goal plainly: open the projects, forms and tables you already have and run them the way you remember — no rewrite, no conversion, no export step.

An IDE and a virtual machine

The project is built from two parts. The first is an IDE, an Electron application with a React interface: a project explorer, form and menu designers, a properties window, an editor and a debugger. The second is a virtual machine — a compiler and bytecode interpreter written in Rust and compiled to WebAssembly, which is what makes 64-bit machines possible.

A database container open in FoxDev Studio's table browser

Import is direct: the IDE reads a Visual FoxPro .pjx project and the .scx, .vcx, .mnx and .prg files it names, and writes the JSON documents it works on beside them.

FoxScript: lambdas and an HTTP server

On top of the existing language the project adds FoxScript: a LAMBDA block, a FoxScript namespace and two new value types. The point is to keep one runtime rather than a second language or a service standing beside the application.

A FoxScript program answering HTTP routes with lambdas

A short server program shows the intent: SET LIBRARY TO "vfpencryption71.fll" ADDITIVE still loads an old 32-bit add-in library, and a lambda registered with FoxScript.Http.CreateServer() answers a route such as /api/v1/customers/:id.

Matching Visual FoxPro, not approximating it

The project's stated method is to settle behaviour by asking Visual FoxPro itself and matching its answer, rather than by reading a reference page and hoping. That matters because small differences break old applications: a column printed a character too wide, an event a moment late. Visual FoxPro's own Solution sample runs after import, with its 123 forms, 7 menus and 11 class libraries.

The IDE shell, the designers, the language and the data engine are done and used daily; reports are the milestone under way, and tables past two gigabytes already work. What cannot be carried over is listed by name — 16-bit overlays and the FoxPro 2.x screen designer are refused with a reason rather than left silent. Build App compiles a project to bytecode and writes an .fxa bundle, and the command-line runner foxvm executes programs with no interface at all.

SSiTech

SiTech — AI-powered web development

We build fast, modern websites and bring AI into real business workflows. Have a project or a question? We'd love to help.