# Synergy DBL

Synergy DBL (Data Business Language) is a compiled, imperative programming language designed for business use. The language was originally called DBL; later it was referred to as Synergy Language; as of 2012 the official name is Synergy DBL. It is based on Digital Equipment Corporation’s DIBOL programming language.
DBL has an English-like syntax that was designed to be self-documenting and highly readable, but not verbose. The language is procedural and, since 2007 (version 9.1), object-oriented. Support for Microsoft’s .NET Framework was added in 2010 (version 9.5).
Code is split into two divisions (data and procedure) and uses a rigid hierarchy. The language includes a standard library consisting of 240 built-in subroutines and functions, 10 built-in classes, and 11 APIs that provide functionality such as access to XML from within DBL programs and sending and receiving data via HTTP/HTTPS.
Synergy DBL is cross-platform, with the current version running on all modern Windows platforms (Windows 7/Server 2008 R2 and higher), as well as on HP-UX, IBM AIX, Oracle Solaris, several varieties of Linux and OpenVMS. Applications can be developed on one platform and ported to other platforms.
Traditional DBL is implemented as bytecode, which is executed by the Synergy Runtime. Synergy .NET programs are CLS-compliant and run under the .NET Framework.
DBL is distributed as part of a suite of programming tools sold as Synergy/DE Professional Series by Synergex International Corporation.

## History

Synergy DBL is based on Digital Equipment Corporation’s DIBOL. DBL was developed by Digital Information Systems Corporation (DISC; the company name was changed to Synergex in 1996) in the late 1970s as a DIBOL alternative, targeting system integrators who combined DEC hardware with third-party peripherals. DIBOL ran only on DEC hardware, while DBL ran on most major business computer platforms.
By mid-1979, DBL was being sold as a DIBOL-compatible compiler for PDP-11 (and compatibles) running RT-11 and RSTS/E.
November 1980: DBL 2.0 released for DEC’s PDP-11- based systems. It compiled and executed programs written in DBL 1.3 or Dibol-11, and ran on RT-11, TSX, RSTS, and RSX-11M. This was the first structured version of DBL. New features included an INCLUDE facility, global storage definition, and fixed-length binary I/O.
January 1983: VMS native-mode version of DBL released to run on VAX. At this time, DBL was also available for DEC RT-11, TSX/TSX-Plus, RSTS, and RSX-11M/M-Plus.
Summer 1984: Initial version 4 released for MS-DOS. (Other platforms were released in 1985, including VMS and TSX-Plus.) The language was rewritten in C and included support for virtual memory, multi-dimensional arrays, and the ability to bind two or more programs together into one executable.
December 1984: DBL version 4 released for the AT&T Unix operating system. It included the ability to chain to non-DBL programs and interface to subroutines written in other languages.
December 1987: First DBL utility announced, a windowing tool designed to simplify the display of menus and help screens. It enabled developers to open up to 256 windows.
February 1993: DBL replaced DIBOL on Digital Equipment Corporation’s VAX, Alpha AXP, DEC OSF/1, and Intel-based SCO Unix systems.
April 1995: Version 5.7.3 expanded the supported platforms to include Linux and Microsoft Windows (Windows 3.1, 95, and NT).
April 2007: Version 9.1 added support for object-oriented programming, and the compiler was rewritten to support objects and provide better error detection.
November 2010: Version 9.5 added support for Microsoft’s .NET Framework, giving programmers access to .NET Framework classes in addition to DBL classes. The language was integrated with Microsoft’s Visual Studio.
December 2014: Version 10.3 added support for creating programs that can run on Android and iOS devices.