
History of programming languages: Delphi is more than just a language

Delphi is usually associated with an application development environment based on the Object Pascal language developed by Borland. This language is the successor to Turbo Pascal with object-oriented extensions, which in turn traces its history to the “pure” Pascal created by Nicklaus Wirth in 1970.
Subsequently, in 2002, Borland developers officially put an equal sign between the Delphi and Object Pascal languages.
Background
The original Pascal, according to its developers, had the fastest compiler in the world. Moreover, with it, the technology for creating platform-independent programs was first developed, which was widely used in a language such as Java.
However, its IDE, if this concept can be applied to the development environment of that time, functioned only on the basis of the DOS operating system.
With the advent of Windows, there was a need to create a software development environment for this platform. The most popular solution for personal Windows computers in the 80s and early 90s was the Borland compiler and IDE Turbo Pascal. The built-in compiler provided high compilation speed and high quality code (hence the Turbo prefix). Turbo Pascal also provided code debugging and a rich set of examples. All these qualities for some time allowed Turbo Pascal to become the standard language Pascal.
Time challenge
On Windows, a graphical interface began to develop quite quickly, while the IDE Turbo Pascal still used a DOS-like interface. Gradually, Microsoft realized that we needed to move towards the "visualization" of programming.
To create a simple program, developers had to write several pages of code: register volume blocks of code for menus and windows, fonts, clear memory, draw buttons, etc. However, the advantages of the Windows GUI were quite strong, so it was necessary to support the development of the operating system. Microsoft understood that it was necessary to somehow make life easier for developers. Therefore, in the 90s, the company launched several parallel projects to create a new programming language and development environment for Windows. The first sign was Visual Basic.

The prospects for Pascal in this regard have been far from bright. By the mid-90s, he was already in rather poor condition. Borland began to refine it, but it soon became clear: the changes and additions would be so serious that the result of this work can be considered a new programming language. For the new language, an IDE with a graphical interface was developed. The new programming environment and language are collectively called Delphi.
The new system (Delphi) got its name in honor of the ancient Greek city of Delphi. The name was chosen for a reason: the city of Delphi is associated with the name of the god of wisdom and the patron of the arts of Apollo. According to legend, the main sanctuary of Apollo was in this city. His Sibyl priestesses uttered prophecies to those wishing to know their fate.
“The name Delphi was suggested by Danny Thorpe during a brainstorming session. We wanted the system’s name to reflect the unique ability of the product to work with databases, and Delphi had the best possible connection with such a well-deserved name in this area as Oracle, at least for those for whom the combination “Delphic Oracle” is about something says, ”said Chuck Jazzewski, head of the Delphi system design research group.
Borland Delphi appeared in Russia at the end of 1993 and immediately gained great popularity.
Major Versions

Version 1 was designed for development under the 16-bit Win16 platform. Starting from the second version, it was possible to compile the program for the 32-bit Win32 platform.

Delphi 1
Version 3 introduced support for multi-tiered data access technology, which allowed creating scalable applications (relatively weakly dependent on the database server) by transferring information processing methods (business rules) to the middle link.

Delphi 3
Along with the 6th version of Delphi, the Kylix environment, compatible with it in terms of language and libraries, was designed to compile programs for the Linux operating system.

Version 8 is capable of generating bytecode exclusively for the .NET platform. This is the first environment focused on the development of multilingual applications (only for the .NET platform). Subsequent versions (indicated by years of release, and not by serial numbers, as it was before) made it possible to create both Win32 applications and .NET applications.
In Delphi 2006, it became possible to write applications for .NET using the standard .NET class library, VCL for .NET. The environment also allowed writing .NET applications in C # and Win32 applications in C ++. Delphi 2006 also implemented MDA (Model Driven Architecture) technology using ECO (Enterprise Core Objects) version 3.0.
What they fought for
The development process in Delphi is extremely simplified. First of all, this refers to creating an interface, which takes 80% of the program development time. It is enough just to drag the necessary components onto the surface of the Windows-window (in Delphi it is called a form) and adjust their properties using a special tool (Object Inspector). Using it, you can associate the events of these components (clicking on a button, selecting an item in the list with the mouse, etc.) with its processing code.
The developer got at his disposal powerful debugging tools (up to step-by-step execution of processor commands), a convenient context-sensitive help system (including the Microsoft API), and teamwork tools for the project.
It became possible to create ActiveX components without using Microsoft IDL, expand the capabilities of the web server (scripts on the server side), knowing almost nothing about HTML, XML or ASP.
Now you can create distributed applications based on COM and CORBA, Internet and intranet applications using Borland DataBase Engine, ODBC drivers or Microsoft ADO to access data.
In Delphi, developers were given the opportunity to create their own components, import OSX components, create project templates and wizards that generate project blanks. Moreover, the authors provided the developer with an interface for connecting other applications (or external programs) with the Delphi IDE.
Change
A new version of Delphi was released every year, but after the fifth one something seemed to happen ... Later it turned out that in parallel with the work on the new version of Delphi, a Delphi-like programming language for Linux was being developed. The new product is called Kylix. Delphi had a huge impact on creating the concept of the C # language for the .NET platform. Many of its elements and conceptual solutions are included in C #. One of the reasons is called the transition of Anders Halesberg, one of the leading developers of Delphi, from Borland Ltd. at Microsoft Corp.
In March 2006, Borland decided to discontinue further development of the JBuilder, Delphi, and C ++ Builder integrated development environments due to the loss-making nature of this area. The sale of the company’s IDE sector was planned. A group of free software supporters organized a fundraiser to purchase rights to the development environment and compiler from Borland. However, in November of that year, it was decided to abandon the sale of IDE businesses.
After that, a new company, CodeGear, which was financially fully controlled by Borland, began to develop IDE products.
In March 2007, CodeGear delighted users with the updated Delphi 2007 for Win32 product line and the release of the brand new Delphi 2007 for PHP product.

On August 25, 2008, Embarcadero, the new owner of CodeGear, published a press release on Delphi for Win32 2009. This version has many innovations at the language level:
• By default, full Unicode support in all parts of the language, VCL and RTL;
• Replacing calls to all Windows API functions with unicode analogs (that is, MessageBox calls MessageBoxW, not MessageBoxA).
• Generic types, they are generics.
• Anonymous methods.
• New compiler directive $ POINTERMATH [ON | OFF].
• The Exit function can now accept parameters according to the type of function.
In the version of Delphi XE2 (2011), the Win64 compiler and cross-compilation for Apple operating systems (MacOS X, iOS) were added.
About the next version in hisThe interview was told by Vsevolod Leonov, Russian evangelist Delphi from Embarcadero Technologies:

Delphi XE3 is the next generation of the Delphi family of rapid development tools. Let me remind you that in 2011 Delphi XE2 came out with the FireMonkey platform, which is an alternative to the VCL library of visual components.Released in 2013, the Delphi XE5 version provided cross-compilation of applications for devices based on the ARM / Android platform.
It is very similar to VCL in terms of use and composition of components (buttons, labels, input fields, menus, etc.), but it has the ability to be transferred to another operating system. FireMonkey is cross-platform. Applications created using FireMonkey can compile on both Windows and Mac OS. Almost in one or two “clicks” we can rebuild the project for a fundamentally different operating system. Almost all demo projects that ship with Delphi on the FireMonkey platform have two versions: one for Windows, the other for Mac OS. And for this you do not need to make changes to the source code of the application

In April 2016, Delphi 10.1 berlin appeared. Innovations:
- Compiler and Object Pascal toolkit for 64-bit iOS;
- Support for universal iOS applications (inclusion of 32-bit and 64-bit binaries in the application package);
- Preview FireUI on mobile platforms;
- Preview on different devices;
- Advanced styles with a single interface designer, including universal styles and customization of Windows styles;
- FireUI device manager allows you to change the specifications of available devices and add new devices;
- Memo, ListView, Calendar, Switch controls for iOS platform;
- MapView component for mobile platforms (iOS and Android), supporting specialized libraries of interactive maps for each platform (developed respectively by Apple and Google).
Neither alive nor dead
It is known that Delphi is permanently "buried" or claim that it is impossible to live like this. They argue that the system has become monstrous, irrelevant, unsupported, uncomfortable, some kind of ...
But we can recall that such an opinion is more common in the United States and Western Europe, where this language has never been so popular. There, these considerations can be quite reasonable in many cases. But there are other countries where the situation may differ - the CIS countries and other countries of Eastern Europe. Vsevolod Leonov agrees

with this :
A small historical excursion about the countries of Eastern Europe. The education system of the former USSR was very strong in many aspects, but not in terms of applied programming. In the early 90's, only those who had a certain specialty could gain access to a computer and learn to do something in modern development environments.
Entire faculties “flew past” fundamental courses in programming. And the presence of Turbo Pascal with a low threshold of entry, and then the Delphi environment, which allows self-education in the good sense of the word, were able to saturate the IT industry with sufficiently competent developers, as well as increase the nationwide engineering level of application software development.
Thus, for the countries of the former socialist camp, the Pascal / Delphi bundle drastically pulled the economy out of IT non-existence due to a very simple programming language and visual development environment based on ready-made components.
New hero from open source
The most famous free implementation of the Pascal language is Free Pascal. In addition to the open source code, its main advantage is multi-platform, as well as support for various dialects.

Based on FreePascal, a free multi-platform IDE Lazarus was created , which allows working with Delphi projects. It is based on the Lazarus Component Library (LCL).
List of declared supported platforms:
• Windows: 98, 2k, XP, Vista, 7, 32 and 64bit;
• FreeBSD / Linux: gtk 2.8 and qt4.5, 32 and 64bit;
• Mac OS X: 10.4, LCL only 32bit, non-LCL can be 64bit.
On the other hand, the Delphi environment has really become more cumbersome and unsuitable for learning programming as it developed. In addition, there is no free Delphi version, even for academic use. These factors led to the almost complete disappearance of Delphi from education.