Est. 1989 Intermediate

PowerBASIC

A native-code BASIC compiler for DOS and Windows, famous for producing small, fast, dependency-free executables under the motto "smaller, faster."

Created by Robert "Bob" Zale (PowerBASIC Inc.)

Paradigm Procedural and structured, with object-oriented programming via COM classes
Typing Static; explicit type declarations alongside classic BASIC type-suffix sigils
First Appeared 1989
Latest Version PowerBASIC for Windows 10.04 (10.0 released May 4, 2011)

PowerBASIC is a family of native-code BASIC compilers for MS-DOS and Microsoft Windows, best known for producing small, fast, self-contained executables with no external runtime dependencies. Where many BASIC dialects of the 1980s and 1990s were interpreted or tied to heavyweight runtimes, PowerBASIC compiled straight to machine code — a design choice captured in creator Bob Zale’s enduring company motto, “smaller, faster.” First released under the PowerBASIC name in 1989, it occupies a distinctive niche: a BASIC that aimed to compete with C and assembler on size and speed while keeping BASIC’s approachable, readable syntax.

History and Origins

PowerBASIC’s lineage reaches back to the 1980s, when Robert “Bob” Zale (1945–2012) wrote BASIC/Z, described as the first interactive BASIC compiler for CP/M and MS-DOS. In 1987, Borland International licensed Zale’s compiler and shipped it as Turbo Basic, slotting it alongside Turbo Pascal and Turbo C in Borland’s popular line of fast, affordable development tools. Turbo Basic was well received and reportedly sold in large numbers.

In 1989, Borland decided to discontinue the product. Rather than let it disappear, Zale bought back the rights, renamed it PowerBASIC, and founded PowerBASIC Inc. to carry development forward independently. This buyback is the moment the PowerBASIC name and company began, and it is the year used as the language’s first appearance here. (Because the same compiler had earlier lives as BASIC/Z and Turbo Basic, you will sometimes see different “origin” years cited depending on which milestone an author counts.)

Through the 1990s the company shipped PowerBASIC for DOS (later branded PB/DOS), with PowerBASIC 3.0 for DOS appearing in 1993. As the industry moved to Windows, PowerBASIC followed: the Windows compiler was eventually renamed PB/Win, and the company also produced the PowerBASIC Console Compiler (PB/CC) for building Windows console applications.

Design Philosophy

PowerBASIC’s guiding idea was that a high-level, easy-to-read language did not have to be slow or bloated. Its compilers generate native machine code and link to standalone executables and DLLs that carry no interpreter, virtual machine, or redistributable runtime. The intended payoff is what the “smaller, faster” motto promises: compact binaries with no runtime to load and native-code execution speed. (These were the compiler’s stated design goals and vendor claims rather than the result of any standardized benchmark cited here.)

That philosophy shaped the feature set:

  • Native compilation rather than interpretation or bytecode.
  • Self-contained binaries with no runtime dependency to ship alongside the program.
  • A built-in inline assembler, letting developers drop down to machine instructions inside otherwise high-level BASIC code.
  • Direct access to the Windows API, so the language could be used for systems-style programming without a heavy framework in between.

Key Features

PowerBASIC keeps the familiar feel of classic BASIC while layering on modern, structured constructs:

  • Structured control flow — block IF/THEN/END IF, SELECT CASE, DO/LOOP, FOR/NEXT, and ITERATE/EXIT statements that remove any need for GOTO-driven spaghetti code.
  • Strong, explicit typing alongside traditional BASIC type-suffix sigils (such as $ for strings and % for integers), with the ability to declare variables and procedure parameters explicitly.
  • Object-oriented programming via COM — classes and interfaces that integrate with Microsoft’s Component Object Model.
  • Dynamic Dialog Tools (DDT) — a set of statements for creating Windows dialogs and controls without hand-coding the full Windows API boilerplate, complemented by the PB Forms visual designer add-on.
  • Graphics statements such as GRAPHIC WINDOW and GRAPHIC BITMAP for drawing and bitmap work.
  • The inline assembler for hand-tuned, performance-critical sections.

A short PB/Win console example shows the structured, readable style:

#COMPILE EXE
#DIM ALL

FUNCTION PBMAIN () AS LONG
    LOCAL i AS LONG
    FOR i = 1 TO 3
        PRINT "Hello, World!"
    NEXT i
END FUNCTION

Here #DIM ALL forces explicit variable declaration, and PBMAIN is the program’s entry point — conventions that reflect PowerBASIC’s lean toward disciplined, structured code rather than the loose, line-numbered style of early BASIC.

Products

Over its lifetime PowerBASIC Inc. shipped several distinct compilers and tools:

ProductTargetNotes
Turbo BasicDOSThe Borland-published predecessor (1987)
PB/DOSMS-DOSNative-code DOS executables
PB/WinWindowsFlagship GUI/DLL compiler (32-bit)
PB/CCWindowsConsole-application compiler
PB FormsWindowsVisual dialog/form designer add-on
COM BrowserWindowsInspects COM interfaces and type libraries

Evolution and Current Status

The most recent widely documented release is PowerBASIC for Windows 10.0, which shipped on May 4, 2011, with version 10.04 as the last update. Bob Zale died on November 6, 2012, and the company announced in 2014 that it would continue operating. In 2017, Drake Software acquired the PowerBASIC source code and assets and stated an intention to continue development.

In practice, no new compiler versions have appeared since the 2011 release, and in 2025 the official PowerBASIC website and vendor forums went offline. That year the user community established pbusers.org as an independent, community-run forum, preserving archived discussions and keeping the user base connected. So while the rights and source code live on under new ownership, PowerBASIC today is best understood as a dormant but fondly remembered compiler with a dedicated legacy community rather than an actively shipping product.

Why It Matters

PowerBASIC’s significance is partly historical and partly philosophical. Historically, it is the surviving thread of a notable lineage — BASIC/Z → Turbo Basic → PowerBASIC — that connects the CP/M era, Borland’s influential Turbo tools, and the long tail of independent Windows development. Philosophically, it stands as a counterexample to the assumption that BASIC must be slow or that ease of use must cost performance. By compiling to compact native code with no runtime baggage, PowerBASIC demonstrated that a friendly, readable language could still produce the kind of tight, fast binaries usually associated with C and assembler — a goal its creator distilled into two words: smaller, faster.

Timeline

1980s
Robert "Bob" Zale (1945–2012) writes BASIC/Z, described as the first interactive BASIC compiler for CP/M and MS-DOS. It is the direct technical ancestor of everything that follows.
1987
Borland International licenses Zale's compiler and releases it as Turbo Basic, fitting it into the Turbo product family alongside Turbo Pascal and Turbo C.
1989
Borland decides to stop publishing Turbo Basic. Zale buys back the rights, renames the product PowerBASIC, and founds PowerBASIC Inc. to continue development and support.
1993
PowerBASIC 3.0 for DOS is published, continuing the DOS line (later branded PB/DOS) with a full native-code compiler and inline assembler.
late 1990s
The Windows compiler line — originally introduced as PB/DLL — is developed during the late 1990s into what becomes PowerBASIC for Windows (PB/Win), producing 32-bit Windows executables and DLLs. Exact version-to-year mappings for the early PB/Win releases are not well documented in official sources.
2005
PowerBASIC for Windows 8.0 is released around this time, refining the 32-bit compiler, its Dynamic Dialog Tools (DDT) for building Windows interfaces, and DLL/console tooling. (Precise release years for the mid-2000s PB/Win versions are not consistently documented.)
2011
PowerBASIC for Windows 10.0 ships on May 4, 2011. Version 10.04 is the last widely documented release; no further versions have appeared since.
2012
Bob Zale dies on November 6, 2012. He had run the company under his long-standing motto, "smaller, faster," posted around the PowerBASIC offices.
2017
On January 31, 2017, Drake Software acquires the PowerBASIC source code and assets, stating an intention to continue development.
2025
The original PowerBASIC website goes offline and the official vendor forums become inaccessible; in September 2025 the user community launches pbusers.org as an independent, community-run forum preserving the archives.

Notable Uses & Legacy

Windows utilities and system tools

Independent developers used PB/Win and the PowerBASIC Console Compiler to build small, fast Windows utilities and command-line tools that ran as self-contained executables with no runtime or framework dependencies.

DLL development for other languages

Because PowerBASIC compiles to native code and can produce standard Windows DLLs, it was frequently used to write performance-sensitive routines callable from Visual Basic and other environments.

Commercial shareware and utilities

The compiler had a following among shareware authors and small software vendors who valued tiny binary sizes, fast compilation, and the absence of redistributable runtime packages.

Migrating legacy BASIC code

Developers carrying forward GW-BASIC, QuickBASIC, and Turbo Basic programs used PowerBASIC for DOS and later PB/Win as a modern, fast-compiling home for existing BASIC codebases.

Inline-assembler and systems-style programming

Its built-in inline assembler and direct access to the Windows API made PowerBASIC attractive for low-level, systems-oriented tasks where programmers wanted BASIC's readability with close-to-the-metal control.

Language Influence

Influenced By

BASIC Turbo Basic

Running Today

Run examples using the official Docker image:

docker pull
Last updated: