Object Pascal je rozšíření programovacího jazyka Pascal o některé vlastnosti objektově orientovaného programování.
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 v souvislosti s přechodem z procesorové architektury Motoroly 68K na PowerPC od IBM.
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í.
class
object
Create
Destroy
Lazarus je velmi podobný Delphi a patří mezi vývojové prostředí IDE s Object Pascal.[1][2][3]
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.
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:
Object Pascal používá vývojové prostředí (IDE) Lazarus.
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.
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.
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.
Delphi – průvodce jazykem Object Pascal pro Delphi:
Free Pascal Archivováno 25. 1. 1999 na Wayback Machine. – reference jazyka Object Pascal:
GNU Pascal(GPC):
Ada • C++ • Common Lisp • D • F# • Go • Oberon • Perl • PHP • Python • Ruby • Rust • Scala • Swift • Tcl (Tk) • Vala
AWK • C • COBOL • DCL • Forth • Fortran • Lua • Modula-2 / Modula-3 • Pascal • Pawn • PL/SQL
BETA • Boo • C# • Eiffel • Java (Groovy, Kotlin) • JavaScript • Object Pascal • Objective-C • Smalltalk • VB.NET
Clean • Ceylon • Erlang • Haskell • J • Lisp • Wolfram Language / Mathematica • Miranda • OCaml • Scheme
LINQ • SPARQL • SQL • XQuery • XSL (XSLT • XSL-FO • XPath)
Gödel • Prolog
Baltazar • Baltík • Karel • Kodu Game Lab • Logo • Microsoft Small Basic • Petr • Scratch
Befunge • Brainfuck • HQ9+ • Malbolge • Ook! • Piet • Whitespace
ALGOL • APL • B • BASIC • CPL (BCPL) • J • MUMPS • PL/I • Simula 67 • SNOBOL
ABAP • AppleScript • ColdFusion • JSA • Julia • MATLAB • R • Visual Basic (VBScript) • Vimscript • Visual FoxPro