DataFlex is an object-oriented high-level programming language and a fourth generation visual tool 4GL for developing Windows, web and mobile software applications on one framework-based platform. It was introduced and developed by Data Access Corporation beginning in 1982. History and overview DataFlex can be traced back to 1982 when the company called Data Access Corporation (founded in 1976) created and developed a language allowing application code to run on almost any system architecture, regardless of hardware. It started as a relatively early example of a fully fledged and commercially used fourth-generation programming language (4GL). In its early forms, DataFlex was available for CP/M, MS-DOS, TurboDOS, Novell NetWare, OS/2, Unix, VMS and IBM AIX operating systems. By 1985, DataFlex was applied in a variety of high-tech industries including automated inventory control systems and insurance fraud detection systems. DataFlex has lasted many years as a niche application development environment. The DataFlex product supports many relational database environments: Oracle database, Microsoft SQL Server, IBM Db2, MySQL, PostgreSQL and any ODBC database. DataFlex applications are used by around 3 million users. In 1991, the 3.0 version with a modernized interface was released. In 2014, Data Access released 2014/18.0 version. DataFlex is developed and provided by Data Access Worldwide, a software company with main offices in Miami, Florida, Hengelo, Netherlands, and São Paulo, Brazil. Features The DataFlex language supports: Supports many database environments: Oracle database, Microsoft SQL Server, IBM Db2, MySQL, PostgreSQL as well as any ODBC database. Easily switch between database backends, no code change needed. Variables are loosely typed. The virtual machine takes care of conversions. Flexibility; the language is object oriented, so developers can create subclasses and libraries. Code compiles to an intermediate byte-code which makes the programs easily portable between operating systems. No threads or multitasking Methods can - for ease of coding - be defined or redefined inside the object definition. Technically the compiler simply sub-classes the superclass and adds the methods to the class. Automatic delegation of messages in the object-oriented programming environment Embedded Database access is ISAM-based. It can be used royalty-free. Language Extension Functions defined in Dynamic Link Libraries can be used. Classes, methods and properties defined in a COM module can be used. COM automation, controls and embedding is supported. Development environments The DataFlex programming language is used in the following development environments: DataFlex Studio This is the flagship visual development environment from Data Access Worldwide.