Object Pascal
Object Pascal | |
---|---|
Семантика | императивная |
Класс языка |
мультипарадигмальный: императивный, структурный, объектно-ориентированный, обобщённый[1], процедурный |
Тип исполнения | компилируемый |
Появился в | 1986 |
Автор | Ларри Теслер, Никлаус Вирт |
Разработчик | Ларри Теслер и Никлаус Вирт |
Расширение файлов |
.p .pp .pas |
Система типов | статическая, динамическая (array of const, RTTI, Variant), строгая |
Основные реализации | Delphi (x86 and CLI), Oxygene (CLI), Free Pascal (x86, x86-64, PowerPC, ppc64, SPARC and ARM), Virtual Pascal (x86), TMT Pascal (x86), Turbo51 (Intel 8051) |
Диалекты | Apple, Turbo Pascal, objfpc, Delphi, Delphi.NET, Oxygene |
Испытал влияние | Паскаль, Smalltalk |
Повлиял на | C#, Java |
![]() |
Object Pascal (Объектный Паскаль) — язык программирования, разработанный в фирме Apple Computer в 1986 году группой Ларри Теслера, который консультировался с Никлаусом Виртом. Произошёл от более ранней объектно-ориентированной версии Паскаль[2], называвшейся Clascal, который был доступен на компьютере Apple Lisa.
Примеры Hello World! в различных объектных расширениях языка
Object Pascal от Apple
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.
Turbo Pascal
Delphi и Freepascal также поддерживают этот вариант синтаксиса. В Delphi для обеспечения обратной совместимости, для Freepascal — это синтаксис по умолчанию
program ObjectPascalExample;
type
PHelloWorld = ^THelloWorld;
THelloWorld = object
procedure Put;
end;
var
HelloWorld: PHelloWorld; { это указатель на THelloWorld }
procedure THelloWorld.Put;
begin
WriteLn('Hello, World!');
end;
begin
New(HelloWorld);
HelloWorld^.Put;
Dispose(HelloWorld);
end.
Object Pascal в Delphi и Free Pascal
В Free Pascal этот вариант синтаксиса доступен в режимах ObjFpc и DelphiОшибка в сносках?: Отсутствует закрывающий тег </ref>
.
Язык Object Pascal поддерживается и развивается другими разработчиками. Наиболее серьёзные реализации Object Pascal (помимо Delphi) — это кроссплатформенный TopSpeed Pascal (версия языка Turbo Pascal[3]) мультиязыковой среды TopSpeed, TMT Pascal, Virtual Pascal, PascalABC.NET, Free Pascal, GNU Pascal. На Object Pascal основан язык программирования Oxygene.
Примечания
- ↑ Hallvard’s Blog: Highlander2 Beta: Generics in Delphi for .NET
- ↑ Буч Г. Объектно-ориентированное проектирование с примерами решения[itbookz.ifolder.ru/7276278]
- ↑ TopSpeed-компиляторы: не дожили до триумфа
![]() | Для улучшения этой статьи желательно: |