Object Pascal
Z Wikipedie, otevřené encyklopedie
Object Pascal je rozšíření programovacího jazyka Pascal o některé vlastnosti objektově orientovaného programování.
Obsah |
[editovat] Raná historie v Apple
Object Pascal vytvořili v roce 1985 pro společnost Apple Computer Niklaus Wirth a Larry Tesler a rozšiřoval existující programovací jazyk Pascal o objektově orientovaný přístup.
Object Pascal vznikl za účelem vývoje MacApp, aplikačního rozhraní pro počítače Macintosh (dnes bychom spíš řekli knihovny tříd). Rozšíření v Object Pascalu i MacApp samotný vyvinuli Barry Hanes, Ken Doyle a Larry Rosenstein, testoval je Dan Allen. Na celý projekt dohlížel Larry Tesler.
Společnost Apple přestala jazyk Object Pascal podporovat v roce 1994, kdy přešla z Motoroly 68K na architekturu IBM PowerPC.
[editovat] Léta Borlandu
V roce 1986 zavedla společnost Borland obdobná rozšíření do svého produktu Turbo Pascal pro počítače Macintosh a v roce 1989 také do Turbo Pascalu 5.5 pro DOS. Jazyk pojmenovala Object Pascal. Když Borland v roce 1994 přesunul svou pozornost od DOSu k Windows, přejmenoval Turbo Pascal na Delphi a uvedl řadu nových rozšíření taktéž s označením Object Pascal. Zrušil však zpětnou kompatibilitu použitím klíčového slova class namísto object, konstruktoru Create a virtuálního destruktoru Destroy, vlastností, ukazatelů na metody a několika dalších věcí.
[editovat] Open source překladače s podporou Apple
V současné době (2005) se jak Free Pascal, tak GNU Pascal snaží zachovat kompatibilitu s Mac Pascalem. Free Pascal umožňuje do určité míry kombinaci objektů v Delphi módu s objekty v Apple Pascalu.
[editovat] Překladače
Vedle již zmíněných překladačů Delphi, Free Pascal a GNU Pascal je zde několik dalších, povětšinou klony Delphi, implementující části Object Pascalu, buď v dialektu Applu nebo Borlandu:
- Virtual Pascal (dialekt Delphi) - jednoduchý Turbo Pascal a Delphi 2 kompatibilní překladač, s podporou pro OS/2, Windows, DOS a částečně Linux. V současné době je vývoj ukončen.
- Pocket Studio (dialekt Delphi) - překladač/RAD, zaměřený na ARM/Palm s několika vlastními rozšířeními. Současný stav vývoje není známý, nicméně stále je v prodeji.
- Chrome - je zásuvný modul pro Visual Studio a nativní .NET/Mono překladač pro příkazový řádek. Zaměřuje se na platformu .NET či Mono a z uvedených překladačů je nejnovější.
[editovat] Ukázka kódu
[editovat] Apple Object Pascal
program ObjectPascalExample; type THelloWorld = object procedure Put; end; var HelloWorld: THelloWorld; procedure THelloWorld.Put; begin WriteLn('Hello, World!'); end; begin New(HelloWorld); HelloWorld.Put; Dispose(HelloWorld); end.
[editovat] Turbo Pascalovský Object Pascal
program ObjectPascalExample; type PHelloWorld = ^THelloWorld; THelloWorld = object procedure Put; end; var HelloWorld: PHelloWorld; procedure THelloWorld.Put; begin WriteLn('Hello, World!'); end; begin New(HelloWorld); HelloWorld^.Put; Dispose(HelloWorld); end.
[editovat] Delphi Object Pascal
program ObjectPascalExample; type THelloWorld = class procedure Put; end; var HelloWorld: THelloWorld; procedure THelloWorld.Put; begin WriteLn('Hello, World!'); end; begin HelloWorld := THelloWorld.Create; HelloWorld.Put; HelloWorld.Free; end.
[editovat] Externí odkazy
Delphi – průvodce jazykem Object Pascal pro Delphi:
- Delphi 5 "Object Pascal Language Guide" (PDF, Windows Help)
- Delphi 1.0 Object Pascal Language Reference Guide
- Object Pascal Style Guide
Free Pascal – reference jazyka Object Pascal: