4th Dimension Learning Basics
The concept of a runtime is one of the most important — and most misunderstood — ideas in the 4th Dimension (4D) world. It sits at the heart of how you turn a database you built for yourself into a distributable application that other people can use, without handing them the keys to your source code or forcing them to buy a full development license. This section explains what runtimes are, how 4D and FileMaker Pro (FMP) approached them differently, and what practical constraints you need to understand before you plan a deployment.
Key Takeaways
- A runtime bundles a stripped-down engine with your developed files so end users can run your application without owning the full development product.
- In 4D, runtime creation is built into the Standard Edition and can be distributed royalty-free and without “binding.”
- 4D Runtime is a separate, redistributable application that runs interpreted databases and offers no design capability.
- 4D Runtime is single-user by design — it cannot be networked, because all 4D networking requires a Server and paid client seats.
- FileMaker Pro’s approach required a Developer Edition and a binding step, and its runtime files could not be networked either.
What a Runtime Actually Is
A runtime is a distribution model. When you develop a database, you are working inside a full development environment that includes the structure editor, form designer, method editor, and every other design tool. That environment is powerful — and expensive, and dangerous to hand to an end user who might accidentally (or deliberately) alter your structure.
A runtime solves all three problems at once:
- Cost — the end user does not need to purchase the full development product.
- Protection — the design environment is removed, so the structure and methods cannot be edited.
- Focus — the user sees only the application you intended them to see, with your custom menus and interface.
The trade-off is capability. A runtime is deliberately crippled relative to the full product. Understanding exactly how it is crippled — and whether that matters for your project — is the whole game.
How 4D and FileMaker Pro Differed
Both 4D and FMP offered runtimes, but the mechanics were quite different. The comparison below reflects the state of the two products as documented at the time.
| Aspect | 4D (Standard Edition) | FileMaker Pro |
|---|---|---|
| Runtime creation | Built in | Required a separate Developer Edition |
| Binding required | No | Yes — files bound to the engine |
| Royalty | Royalty-free distribution | Governed by the Developer Edition terms |
| Networking of runtime | Not supported | Not supported, even with FMP Server |
| Design capability in runtime | None | None |
The key architectural difference is binding. FMP required you to bind your files to the runtime engine, and that engine would only work with files that had been bound to it. 4D took a looser approach: the runtime engine is simply a separate application that can open the databases you designed for it, with no binding step. That flexibility is one reason 4D developers tended to find runtime distribution less fiddly.
The 4D Runtime in Detail
With 4D, the ability to create runtimes is built into the Standard Edition. You can make unlimited runtime versions and distribute them royalty-free. There is no binding step. The 4D Runtime engine is a separate application, just like 4D Standard, but it allows only the use of the created 4D programs — there is no design capability whatsoever.
4D Runtime is designated as redistributable according to the 4th Dimension License Agreement and can be freely distributed according to the terms of that license. 4D Runtime consists only of the application which bears this name.
A few behavioral specifics matter enormously in practice:
- 4D Runtime can only run interpreted databases. If you want to distribute a compiled database, you need the separately purchased 4D Runtime Classic, which allows runtimes of compiled versions.
- When you launch 4D Runtime, the New button is not present in the Open Database dialog. You cannot create a new database from within the runtime.
- The Open Database dialog allows you to open interpreted structures only, and only databases designed to run in the Custom Menus environment.
- If you open a database that has no menu bar, 4D Runtime exits automatically. This is a hard requirement, not a warning.
- You cannot enter the User environment, nor the Design environment. If you try to reach the Design environment — for example, using the Option-f shortcut — 4D Runtime automatically quits.
That last point is worth internalizing. The runtime does not politely refuse; it terminates. This is a deliberate safety mechanism, but it means your database must be correctly configured before you build the runtime, or your users will hit a wall immediately.
Why Runtimes Cannot Be Networked
This is the constraint that surprises people most: 4D runtimes cannot be networked. At first glance this seems like a serious limitation. But it makes sense once you understand 4D’s licensing architecture.
All networking with 4D requires a Server. The Clients themselves are free to distribute, but a license for each seat must still be purchased. Because the server-and-client model already exists as the supported path to multi-user access, the sole purpose of the runtime is single-user use. The runtime is not competing with the Server — it occupies a different niche entirely.
So the decision tree is straightforward:
- Single user, no server → a runtime is the right distribution vehicle.
- Multiple concurrent users → you need 4D Server and client licenses, not a runtime.
Trying to force a runtime into a multi-user role is a dead end. Plan your architecture around this from the start.
How to Decide Whether a Runtime Fits Your Project
Before committing to a runtime distribution, work through these criteria honestly:
- Is it single-user? If more than one person needs simultaneous access to shared data, a runtime is the wrong tool.
- Interpreted or compiled? Standard 4D Runtime runs interpreted databases only. If you need compiled distribution, budget for 4D Runtime Classic.
- Does your database use custom menus? It must, and it must have a menu bar, or the runtime will exit on open.
- Have you removed all design-time dependencies? Any method or form that assumes design access will fail.
- Do you understand the license terms? Redistribution is permitted, but it is governed by the 4th Dimension License Agreement — read it rather than assuming.
If you can answer all five confidently, a runtime is a clean, royalty-free way to ship your work.
Practical Preparation Checklist
Building a runtime is less about a single command and more about preparing your database so it behaves correctly once the design environment is gone. A useful checklist:
- Design a proper menu bar and drive the application through the Custom Menus environment.
- Test in the User environment first. If your database misbehaves there, it will misbehave worse in a runtime.
- Remove or guard any code that assumes design access, including anything triggered by design-mode shortcuts.
- Confirm the database opens cleanly with no dialog that expects a New button.
- Decide interpreted vs. compiled early, because it determines whether you need 4D Runtime Classic.
- Document the license obligations you are passing to your users.
The recurring theme is that the runtime is unforgiving of assumptions. Everything the full environment let you get away with must be resolved beforehand.
Where Runtimes Fit in the Wider 4D Story
Runtimes are one piece of a larger deployment picture that includes system requirements, program structures, networking differences, the compiler, web hosting, data charting, plug-ins, and utilities. Each of these interacts with the runtime decision:
- The compiler determines whether you can ship interpreted or need a compiled runtime.
- Networking determines whether a runtime is viable at all.
- Plug-ins must be compatible with the runtime engine you distribute.
- Web hosting is a separate delivery channel entirely, distinct from desktop runtime distribution.
Thinking of the runtime as the “single-user desktop delivery” option — sitting alongside server-based multi-user deployment and web deployment — keeps the whole landscape coherent. For background on the platform itself, see the Wikipedia article on 4th Dimension, and for the broader category of tools that let small teams build business applications, the Wikipedia overview of low-code development platforms is a useful reference. FileMaker, the other product discussed here, is documented at FileMaker.
Frequently Asked Questions
What is a 4D runtime?
A 4D runtime is a stripped-down, redistributable version of the 4D application that can run the databases you developed but offers no design capability. It lets you distribute your work to end users without requiring them to purchase the full development product. It is built into the 4D Standard Edition and can be distributed royalty-free.
Can a 4D runtime be used by multiple people over a network?
No. 4D runtimes cannot be networked. All networking in 4D requires a Server, and while clients are free to distribute, a license must be purchased for each seat. Because of this, the runtime’s sole purpose is single-user use, and multi-user deployments should use 4D Server instead.
What is the difference between 4D Runtime and 4D Runtime Classic?
Standard 4D Runtime can only run interpreted databases. If you need to distribute a runtime of a compiled database, you must purchase 4D Runtime Classic separately. The choice between them depends entirely on whether you intend to ship interpreted or compiled code.
Why does 4D Runtime quit when I try to open the Design environment?
This is by design. The runtime deliberately removes all design capability, so attempting to enter the Design environment — for instance with the Option-f shortcut — causes it to exit automatically. Likewise, opening a database with no menu bar causes an immediate exit, because the runtime expects databases built for the Custom Menus environment.
Does FileMaker Pro require binding for its runtimes?
Yes. FMP required you to bind your files with the runtime engine, and that engine would only work with files bound to it. It also required a separate Developer Edition. 4D, by contrast, has no binding step and includes runtime creation in the Standard Edition.
Can I create a new database from within 4D Runtime?
No. When you launch 4D Runtime, the New button is not present in the Open Database dialog. The dialog allows you to open interpreted structures only, and only databases designed to run in the Custom Menus environment. Database creation and design must happen in the full development environment beforehand.
Frequently asked questions
What is a 4D runtime?
A 4D runtime is a stripped-down, redistributable version of the 4D application that can run the databases you developed but offers no design capability. It lets you distribute your work to end users without requiring them to purchase the full development product. It is built into the 4D Standard Edition and can be distributed royalty-free.
Can a 4D runtime be used by multiple people over a network?
No. 4D runtimes cannot be networked. All networking in 4D requires a Server, and while clients are free to distribute, a license must be purchased for each seat. Because of this, the runtime's sole purpose is single-user use, and multi-user deployments should use 4D Server instead.
What is the difference between 4D Runtime and 4D Runtime Classic?
Standard 4D Runtime can only run interpreted databases. If you need to distribute a runtime of a compiled database, you must purchase 4D Runtime Classic separately. The choice between them depends entirely on whether you intend to ship interpreted or compiled code.
Why does 4D Runtime quit when I try to open the Design environment?
This is by design. The runtime deliberately removes all design capability, so attempting to enter the Design environment — for instance with the Option-f shortcut — causes it to exit automatically. Likewise, opening a database with no menu bar causes an immediate exit, because the runtime expects databases built for the Custom Menus environment.
Does FileMaker Pro require binding for its runtimes?
Yes. FMP required you to bind your files with the runtime engine, and that engine would only work with files bound to it. It also required a separate Developer Edition. 4D, by contrast, has no binding step and includes runtime creation in the Standard Edition.
Can I create a new database from within 4D Runtime?
No. When you launch 4D Runtime, the New button is not present in the Open Database dialog. The dialog allows you to open interpreted structures only, and only databases designed to run in the Custom Menus environment. Database creation and design must happen in the full development environment beforehand.
More on 4D (4th Dimension) database & low code app development tutorials
Browse our latest guides and reviews.
Read more →