Delphi programming language
Delphi is the primary programming language of Borland Delphi. The Delphi language is a derivative of Borland's Object Pascal, which is itself a derivative of Pascal.
The Delphi programming language was created by Borland and debuted with the first version of Borland Delphi. Borland sells integrated development environments (IDEs) that compile the Delphi programming language to Microsoft Windows, the Microsoft .NET Framework and Linux. The open source Free Pascal project allows the language to be compiled for Mac OS X, Win64 and Windows CE.
Programming language and toolkit
The main distinguishing features of Delphi and Kylix from other IDEs are the Delphi language, the VCL/CLX (Visual Component Library), strong emphasis on database connectivity, and a large number of third party components.
- delegation of interface implementation to a field or property of the class
- implementation of message handlers by tagging a method of a class with the integer constant of the message to handle
- COM independent interfaces with reference counted class implementations
- can be compiled into native x86 code or managed .NET code
Trivia
- The architect of Delphi, Anders Hejlsberg, had previously produced Turbo Pascal, and later hired by Microsoft in 1996, where he has led the design of both the Java dialect J++ and C#, the most popular language for Windows' .NET platform.
Clones and alternatives
While not being a direct substitute for the entire product Delphi itself, there are a number of efforts that strive to be more or less language compatible and take Delphi code to places where Delphi and Kylix itself can not reach.
These can get Delphi code running in ways not possible with Delphi (such as supporting different operating systems, free distribution and educational use, and allowing examination of the compiler source) and allow for some vendor independence. These are generally used educationally and to get the server parts of Delphi apps running on non-mainstream operating systems; most had Linux support years before Kylix.
- Bloodshed Dev-Pascal A very polished graphical 32-bit Windows editor (though not RAD) as a frontend for both GNU Pascal and Free Pascal.
- Free Pascal A commandline compiler that aims source compatibility with the core feature set of both the Turbo Pascal and Delphi dialects. The current version is 2.0(.2), which are highly Delphi6/7 compatible. Operates on most x86 operating systems. Supports Linux, Mac OS and Mac OS X (including an Xcode implementation) on PowerPC family, and Linux on AMD64. SPARC and Acorn RISC Machine (ARM) architectures are working and formally released but not 100% end-user ready yet.
- Lazarus [1] is an effort to build a RAD on top of Free Pascal. The internal classes hierarchy can base itself on several graphical toolkits. The main toolkits are GTK1 and Win32, and GTK2 and Windows CE have already come a long way. Qt is also partially supported. Occasionally people want .NET and wxWidgets, but an apparent lack of interest prevents the implementation of these toolkits.
- CrossFPC - a free toolkit to integrate the Free Pascal compiler, targeting various OS and hardware platforms, into the Windows Delphi IDE. See more about it from this mailing list discussion.
- GNU Pascal (Separately distributed part of the GNU Compiler Collection) While formally not aimed at the Borland dialects of Pascal, it does contain a Borland Pascal compatibility mode, and is very slowly absorbing Delphi language features, though not yet directly suitable for recompiling large bodies of Delphi code. It is the most prolific compiler in terms of operating systems and processors though, and therefore deserves mentioning as a last resort.
- InnerFuse is a Delphi interpreter for embedding in applications. It is rumoured to work with several of the alternatives too.
- OpenSibyl is another effort to build a RAD on top of Free Pascal. However it is geared towards OS/2, and still in initial stages.
- Vector Pascal Vector Pascal is a language targeted at SIMD instruction sets such as the MMX and the AMD 3d Now, supporting all Intel and AMD processors, as well as the Sony Playstation 2 Emotion Engine.
- Virtual Pascal is a x86 32-bit Turbo Pascal and Delphi compatible compiler mainly aimed at OS/2 and Windows, though it developed a DOS+Extender and an experimental Linux cross-compiler too. The compiler is stuck on the level of about Delphi V2, and the site hasn't changed significantly in two years, and development of Virtual Pascal has stopped. Nevertheless, of the free alternatives, it is still the one with the best polished IDE and debugger though Free Pascal is getting nearer and nearer.
- WDOSX is a Win32 API-emulating DOS extender that can be used to get Delphi console applications running on plain DOS.
- Winsoft Pocket Studio aims to compile stripped down Delphi code to PDAs.
- Game Maker for Windows also uses a Delphi-based programming language, in the form of GML (Game Maker Language).special:cite
Documentation
Delphi Developer documentation from Borland:
- Delphi Developer's Guide
- Object Pascal Language Guide
- VCL/CLX Reference
More from Delphi Developer Support section (FTP archives).
- Turkish Seminar videos,articles and help files Delphi Turkiye seminar video files, and offline chm forum(help,article etc..)
See also
External links
- Borland Delphi official site
This page or section may contain link spam masquerading as content. |
- Press Release Borland to divest itself of Delphi
- About Delphi Programming
- Australian Delphi User Group — informative email list
- CrossFPC project to integrate the Free Pascal compiler with multi-platform targets into the Windows Delphi IDE (not yet finished)
- CrossKylix integrates the Linux Kylix compiler into the Windows Delphi IDE
- Delphi Application Programmers User Group in Denmark
- delphi3000.com
- Delphi32.com Delphi downloads, forums and resources
- Delphi Basics Tutorial and Reference information on the basics of Delphi.
- DelphiFeeds.com Delphi blogs and newsgroups aggregator website.
- delphigamedev.com Many tutorials on game development with Delphi.
- The Delphi Object Model
- Delphi Pages
- Delphi Super Page
- Delphi Tricks Tips & Tricks for Delphi
- Delphi Tutorials on Delphi Central
- Dr. Bob's Delphi, C++Builder and JBuilder Programming Clinic
- Marco Cantu - the Autor of "Mastering Delphi" book series
- Freebyte's Guide to free Delphi programming
- How to do things — Lots of Delphi articles
- Lazarus Freepascal based, Cross platform, Free/Opensource, Delphi compatible IDE.
- Open Directory Project: Delphi
- Project JEDI
- SwissDelphiCenter.com Quality programming tips
- Torry's Delphi Pages
- Translating C++ Code into Delphi Pascal
- Pascal Game Development
- Delphi Turkiye Turkish developer network, forum
- Delphi Wiki
- Newton Game Dynamics Engine
- DelphiGL
- Felix Colibri design patterns, Socket and Internet programming, Asp.Net helpers, Delphi Grammar