gobi

Functional clone of dBase II written in Go. It recreates the dot prompt, the expression engine, and the file ecosystem of the 1983 tool — a way to learn the language by building something I already knew deeply.

What’s included

  • REPL with dot prompt, history, and line editing
  • Expression parser with built-in functions (TRIM, UPPER, SUBSTR, EOF…) and .AND. / .OR. / .NOT. operators
  • .dbf files in the original format (header, field descriptors, logical deletion)
  • On-disk B-Tree indexes (.ndx) with 512-byte pages
  • Procedural .prg scripts (DO WHILE, IF/ELSE, DO CASE, LOOP/EXIT)
  • VT100 TUI with @ SAY / @ GET, READ, and BROWSE
  • Commands such as JOIN, UPDATE, SORT, APPEND FROM, COPY TO, SELECT

Code and reading