"As platforms and operating systems proliferated in the early 1980s, the company found it difficult to port the assembly language-based dBase to target systems. This led to a rewrite of the platform in the C programming language, using automated code conversion tools. The resulting code worked, but was essentially undocumented and inhuman in syntax due to the automated conversion, a problem that would prove to be serious in the future."<p>Rewriting it with an LLM, is surprisingly apt.
Gotta plug the delightful, 80s-core hour length ad for dBASE<p><a href="https://youtu.be/bYU3CQomE5M?is=BysfXD3ybPme-DoL" rel="nofollow">https://youtu.be/bYU3CQomE5M?is=BysfXD3ybPme-DoL</a><p>Before my time, but fun to see how much could be done with it!
Haha :-) - FoxPro and Clipper next.
[dead]
I built this because I missed the dot prompt. Before SQL and ORMs, you typed USE customers, then LIST, and your data was just there. WebBase-III is that whole world rebuilt from scratch as a web app: a W3Script interpreter (lexer, recursive-descent parser, async executor) in TypeScript, backed by Node, WebSockets and SQLite. BROWSE, @ SAY GET forms, .prg programs, indexes with SEEK, reports — it's all there.
One-click try (no install) via Codespaces: <a href="https://codespaces.new/DDecoene/WebBaseIII" rel="nofollow">https://codespaces.new/DDecoene/WebBaseIII</a>. Open port 5173 and you're at the dot prompt.
It's deliberately a toy (AGPL to keep it that way). Happy to answer anything about the interpreter or the dBASE quirks I had to decide whether to preserve — like the 10 work-area limit, which I dropped.