Object Pascal
Object Pascal is een evolutie van de programmeertaal Pascal , inclusief elementen die behoren tot het objectgeoriënteerde programmeerparadigma . [ 1 ]
Vroege
Object Pascal is een uitbreiding op de Pascal-taal die bij Apple Computer is ontwikkeld door een team onder leiding van Larry Tesler in overleg met Niklaus Wirth (uitvinder van Pascal). [ 2 ] Het is een afstammeling van een eerdere objectgeoriënteerde versie van Pascal genaamd Clascal , die beschikbaar was in het Lisa - team .
Object Pascal was nodig om MacApp te ondersteunen , een uitbreidbaar Macintosh-toepassingsframework dat nu zou worden aangeroepen door een klassenbibliotheek. De extensies Pascal en MacApp Object zijn ontwikkeld door Barry Haynes, Ken Doyle en Larry Rosenstein en getest door Dan Allen. Larry Tesler hield toezicht op het project, dat heel vroeg in 1985 begon en in 1986 een product werd.
Een van de Object Pascal-extensies is ook geïmplementeerd in de THINK Pascal IDE . De IDE bevat een compiler en editor met syntaxisaccentuering en -controle, een krachtige debugger en een klassenbibliotheek. [ 3 ] Veel ontwikkelaars geven de voorkeur aan THINK Pascal boven Apples implementatie van Object Pascal, omdat THINK Pascal een nauwe integratie van zijn tools biedt. De ontwikkeling stopte na versie 4.01 toen het bedrijf werd overgenomen door Symantec . Dus de ontwikkelaars hebben het project opgeschort.
In 1994 liet Apple de ondersteuning voor Object Pascal vallen toen ze overstapten van het gebruik van Motorola's 68K-chips naar IBM's PowerPC-architectuur. MacApp 3.0, voor dit platform, is herschreven in C++ .
De jaren Borland, CodeGear en Embarcadero
In 1986 introduceerde Borland soortgelijke uitbreidingen, ook wel Object Pascal genoemd, voor de Turbo Pascal- producten voor de Macintosh, en in 1989 voor Turbo Pascal 5.5 voor DOS. Toen Borland hun producten in 1994 heroriënteerde van DOS naar Windows , creëerden ze een opvolger van Turbo Pascal genaamd Borland Delphi en introduceerden ze een nieuwe set extensies om te creëren wat nu bekend staat als de Delphi-taal (geïnterpreteerd en gecompileerd door de Embarcadero Delphi-omgeving). ).
De ontwikkeling van Borland Delphi begon in 1993 en Delphi 1.0 werd officieel uitgebracht in de Verenigde Staten op 14 februari 1995. Delphi introduceerde een nieuwe syntaxis die het sleutelwoord classgebruikte in plaats van object, de constructor, Createen een virtuele destructor Destroy(dus niet meer dan bellen Newof een Dispose), eigenschappen, methode-aanwijzers en een paar andere dingen; en tegelijkertijd behield het de compatibiliteit met de vorige syntaxis (waardoor migratie mogelijk was). Deze veranderingen werden geïnspireerd door het ISO -werkdocumentatieproject voor objectgeoriënteerde extensies, maar veel van de Turbo Pascal-dialectverschillen (zoals de eis dat alle methoden virtueel moeten zijn ) werden genegeerd.
De Delphi-taal is in de loop der jaren blijven evolueren om constructies zoals dynamische arrays , generieke programmering en anonieme methoden te ondersteunen .
Compilers
Enkele van de compilers die een of meer versies van deze taal ondersteunen (elk met zijn eigen eigenaardigheden) zijn:
- Borland Delphi , dat aanvankelijk werd gebruikt als de naam voor zijn programmeertaal Object Pascal , maar later, na het aanbrengen van wijzigingen, werd veranderd in Delphi .
- Embarcadero Delphi (voorheen CodeGear Delphi en daarvoor Borland Delphi) is waarschijnlijk de bekendste compiler. Het is de opvolger van de succesvolle productlijnen Borland Pascal en Turbo Pascal . Het is gericht op Windows API's Win16 (Delphi 1), Win32 (Delphi 2 en hoger), ..NET 1.x, 2.0 (Delphi 8, Delphi Delphi 2005-2007) en Mac OS X (Delphi XE2). Toen het ondersteuning voor .NET bevatte, werd deze streng een apart product genaamd Oxygene.
- Oxygene (voorheen bekend als Chrome ) is een Object Pascal-compiler die kan worden geïntegreerd met Microsoft Visual Studio . Het is ook beschikbaar als een gratis opdrachtregelcompiler die native op de Infrastructure CLI draait . Het is gericht op .NET- en Mono-platforms.
- Free Pascal (FPC), is een open source compiler die veel Pascal-dialecten ondersteunt, waaronder Turbo Pascal 7 en Delphi. Momenteel kan FPC code genereren voor x86-, x86-64- , powerpc- , sparc- en ARM -processors en voor verschillende besturingssystemen, waaronder Microsoft Windows , Linux , FreeBSD , Mac OS en Mac OS X (met een Xcode- integratiekit). Er bestaan verschillende afzonderlijke projecten om snelle applicatie-ontwikkeling met FPC mogelijk te maken, met als meest prominente de Lazarus IDE .
- GNU Pascal . Hoewel het formeel niet gericht is op de Delphi-taal, bevat het wel een Borland Pascal-compatibiliteitsmodus, en sommige Delphi-taalfuncties worden langzaamaan geïntegreerd. Het is niet geschikt om grote hoeveelheden Delphi-code rechtstreeks opnieuw te compileren, maar het is opmerkelijk vanwege de overvloedige ondersteuning voor besturingssystemen en hardware-architecturen.
- MIDletPascal is een ontwikkelingstool voor mobiele applicaties die Java ME - bytecode genereert.
- Pocketstudio is de basis voor de Pascal IDE voor Palm OS .
- Kylix of Borland Kylix . Het was een variant van de Borland Delphi IDE, ontwikkeld voor Linux . Het werkte alleen voor Linux met Intel 32-bit-architectuur, het gebruikte de Qt -bibliotheek . En het werkt niet op de meeste moderne Linux-distributies (vanwege kernelproblemen,...).
- Virtual Pascal was een gratis 32-bits compiler die compatibel was met Turbo Pascal en Delphi, voornamelijk gericht op OS/2 en Microsoft Windows, hoewel er ook een DOS+-extender en experimentele cross-compiler voor Linux werden ontwikkeld. De ontwikkeling stopte toen Delphi 2 werd uitgebracht en in 2007 verklaarde het op zijn officiële website dat het de ontwikkeling stopte.
- TMT Pascal
Ontwikkeling
Veel functies zijn voortdurend geïntroduceerd in Object Pascal, met uitbreidingen op Delphi en ook op Free Pascal. Als reactie op kritiek heeft Free Pascal de generieke extensies overgenomen, en de gratis versies van Delphi en Pascal ondersteunen nu ook overbelasting door operators (met andere grammatica echter). Delphi heeft sinds versie 7 ook veel andere functies geïntroduceerd, waaronder enkele generieke extensies. [ 4 ]
Referenties
- ^ "De programmeertaal Object Pascal (Delphi)" . www.programandoideas.com. 21 februari 2010. Gearchiveerd van het origineel op 27 september 2013-(: tekst "accessdate-$-september 2013" genegeerd ( help )
- ^ Tesler, Larry (1985). "Object Pascal-rapport". Gestructureerde taalwereld 9 (3): 10-7.
- ^ Seiter, Charles (november 1990). "Denk aan Pascal 3" . Macwereld 7 (11): 236.
- ^ "Nieuwe Delphi-taalfuncties sinds Delphi 7" . Code versnelling . Ontvangen op 6 juli 2008 .