Jump to content

Язык сценариев профиля

Язык сценариев профиля
Парадигма процедурный
Разработано Фрэнк Санчес
Впервые появился 1998
ТЫ Кросс-платформенный
Под влиянием
Свинка

Profile Scripting Language ( PSL ) — это надмножество MUMPS языка программирования , которое добавляет функции объектно-ориентированного языка . В настоящее время он разрабатывается Fidelity National Information Services (далее FIS).

PSL — это язык, который реализует объектно-ориентированные концепции, такие как классы, методы, инкапсуляция, наследование и строгая типизация данных, как расширения языка MUMPS. PSL был первоначально задуман в декабре 1998 года Фрэнком Санчесом, тогдашним президентом Sanchez Computer Associates, как инструмент преобразования, который мог бы провести реверс-инжиниринг очень большого и сложного банковского приложения («Профиль» Fidelity National Information Services), написанного преимущественно на MUMPS.

Фрэнк Санчес разработал исходную семантику языка, синтаксис, синтаксический анализатор, компилятор и оптимизатор, интерфейс базы данных, привязку схемы, встроенные классы и методы во время рождественских каникул в 1998 и начале 1999 года. Ему помогали в разработке первых коммерческих выпусков (версия 1). - 2) покойного Боба Чанга, руководителя отдела разработки инструментов Data-Qwik в Sanchez, и Марка Спайера, в то время старшего разработчика программного обеспечения в Sanchez. Sanchez Computer Associates (SCAI) была приобретена компанией Fidelity National Financial (FNF), ныне FIS , в апреле 2004 года. В более поздних версиях компилятор поддерживался и значительно улучшался Франсом Витте, старшим техническим руководителем FIS, и Дэном Расселом, ранее руководитель отдела развития технологий в Sanchez, а теперь удаленный старший технический консультант FIS. Франс и Дэн сосредоточились на реализации независимых от базы данных функций языка, а в последнее время и на исходном целевом коде Java.

Языковые концепции

[ редактировать ]

Первоначальные концепции языка включали возможность привязки исходного кода к схеме базы данных, которая генерирует динамические классы доступа к данным (предваряя создание аналогичного постоянного класса в Java ) и методы базы данных, которые могли быть сгенерированы кодом либо в глобальные переменные MUMPS, либо в коммерческую RDMS . Классы доступа к данным PSL идентифицируются в исходном коде как Record<classes>.

PSL интерпретирует устаревший код MUMPS, хотя некоторые устаревшие команды (например, GO, NEW и KILL) можно отключить или пометить как устаревшие (генерируя предупреждения компилятора). Прямые ссылки на глобальные переменные MUMPS также могут быть отключены или признаны устаревшими. В язык PSL также были добавлены многочисленные директивы компилятора PSL (например, #IF/#ELSE, #ACCEPT), а также блоки и комментарии в стиле Java, современная семантика обработки ошибок и пробелы. Два элемента языка MUMPS изначально были исключены (блоки M-стиля и метка перехода + смещение), поскольку они не могли поддерживаться при обработке области объекта PSL.

PSL позволяет определить класс как внутренний или внешний. Внешние классы реализуют определения переменных класса, метода и экземпляра, соответствующие общим объектно-ориентированным языкам, и генерируются в скомпилированный код (доступ к которому осуществляется во время выполнения). С другой стороны, внутренние классы и методы реализованы как расширения самого компилятора PSL и выполняются во время компиляции для генерации кода времени выполнения. Эта функция может генерировать сильно оптимизированный или специализированный код в зависимости от времени компиляции или условий программы. Эта возможность считалась критически важной для возможности генерировать код, оптимизирующий как глобальную базу данных MUMPS, так и несколько коммерческих RDMS из одного и того же источника PSL.

Первоначальный выпуск PSL (первоначально называвшийся M++) состоялся летом 1999 года как часть профиля версии 6.2. В этом выпуске менее 5% кода MUMPS было преобразовано в PSL, хотя новые разработки велись преимущественно в исходном коде PSL, и велся анализ для широко распространенного обратного проектирования. Преобразование приложения Profile из MUMPS в PSL было на 100% завершено в 2006 году с выпуском Profile версии 7.0. Версия профиля 7.0 также была первой коммерческой версией приложения, которую можно было настроить для работы либо в базе данных GT.M MUMPS, либо в базе данных Oracle 9 , с исходным кодом GT.M MUMPS в качестве цели PSL.

В настоящее время PSL продолжает активно расширяться для поддержки IBM DB2 в качестве целевой базы данных и для опциональной генерации целевого кода GT.M MUMPS или Java из одного и того же исходного кода PSL. Кроме того, PSL поддерживается современной средой разработки на базе Eclipse со встроенной схемой и управлением кодом, а также многочисленными интерактивными плагинами. Джим Джойс, старший разработчик исследований и разработок в FIS, отвечал за большую часть концепции и разработки IDE.

Использование

[ редактировать ]

По состоянию на июнь 2011 года PSL остается языком исходного кода банковской системы FIS Profile, развернутой в 26 странах и более чем 200 учреждениях, включая некоторые из крупнейших банков мира. Хотя в будущем возможно развертывание Java и коммерческих RDMS, сегодня 100% развертываний выполняются на целевом языке и базе данных GT.M MUMPS, за исключением одного развертывания СУБД Oracle.

См. также

[ редактировать ]


[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 09fba1edffa046a663339d9f3e41872e__1619665740
URL1:https://arc.ask3.ru/arc/aa/09/2e/09fba1edffa046a663339d9f3e41872e.html
Заголовок, (Title) документа по адресу, URL1:
Profile Scripting Language - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)