Подтвердить что ты не робот

Поиск полного синтаксиса Delphi (объект pascal)

Мне нужен полный синтаксис Object Pascal (желательно Delphi 2009). Некоторые синтаксисы задаются файлами справки, но не вся информация предоставляется. Поэтому я начал собирать лишние фрагменты информации. Недавно я добавил их к более или менее полному описанию синтаксиса (например, EBNF).

Хотя он выглядит обширным, все еще есть ошибки, и я уверен, что части отсутствуют (особенно в синтаксисе .NET). Поэтому я спрашиваю сообщество SO Delphi. У вас есть какая-либо информация или вы можете исправить ошибки? В свою очередь я предоставляю полный синтаксис сообществу. Это, вероятно, сэкономит вам некоторое время;-). В будущем мне нравится делать то же самое для других языков (например, С#/С++/Java).

Ниже приведено описание синтаксиса: Мой синтаксис sofar. Или, если вам нравится Текстовая версия. (XHTML генерируется из текстовой версии).

Обратите внимание, что синтаксис фокусируется на синтаксической части, потому что лексическая часть не является проблемой.

Обновление

У меня есть новая версия синтаксиса Delphi. html версия. Он включает в себя все версии, включая 2009 год. Экстремалы Призм все еще находятся в списке задач. И я не уверен, что собираюсь держать их вместе.

Для реальных пуристов он также содержит полный код ассемблера (который не поддерживает полный 100% набора Intel, но только несколько инструкций пропущены.).

4b9b3361

Ответ 1

Попробуйте следующее: DGrok - грамматика Delphi

Ответ 2

В Delphi нет полного опубликованного синтаксиса. Имейте в виду, что .net и win32 delphi имеют разные синтаксисы.

В этом проекте есть собственный парсер Delphi. И множество тестовых примеров кода, который компилируется, но подталкивает пределы синтаксиса.

Ответ 3

Это может быть хорошей помощью. Это parser, используемый в TwoDesk Castalia.

Ответ 4

Какие именно ошибки и функциональные возможности вам не хватает?

При сканировании вашего документа кажется, что вы смешиваете синтаксис и семантику. Я не понимаю, почему отличать SimpleTypeFloat и SimpleTypeOrdinal от синтаксического уровня или приоритет кода оператора как синтаксическую функцию в AddOp и MulOp. true, false, nil - это идентификаторы, как и любое имя переменной, которую вы выберете.

Ответ 5

Громкость Delphi 7 находится в задней части книги Object Pascal.

Ты имеешь в виду за несколько тысяч долларов, которые они тебе даже не посылают? Они даже отправляют вам постер 6 'x 6'?

Ответ 6

Вы всегда можете прочитать источник в Free Pascal Compiler. Он поддерживает Object Pascal.