AngelScript — интерпретируемый язык программирования, разработанный специально для использования в качестве скриптового языка в приложениях. Является свободно распространяемым, с открытыми исходными кодами. Портирован на различные платформы. Синтаксис языка основан на хорошо известных C++, Java, C# и D.Содержание [показать] [править] Описание AngelScript представляет собой движок, в котором приложение может регистрировать функции, свойства и типы, которые могут использоваться в скриптах. Скрипты компилируются в модули. Количество используемых модулей варьрируется в зависимости от нужд. Приложение может также использовать различные интерфейсы для каждого модуля с помощью групп конфигурации. Это особенно полезно, когда приложение работает с несколькими типами скриптов, например, GUI, AI и т.д. Каждый модуль имеет свою собственное пространство скриптов, глобальных переменных и классов. Обычно они не разделяются между модулями, хотя и несколько модулей могут быть построены из одного и того же скрипта. Модули могут взаимодействовать друг с другом через обязательную функцию связывающую функцию. Так как скрипты компилируются в байт-код, AngelScript предоставляет виртуальную машину для выполнения байт-кода, также известного как скрипт-контекст. Приложение может обрабатывать любое число скрипт-контекстов в одно и то же время, хотя большинству приложений хватает только одного. Контексты поддерживают приостановку\возобновление исполнения, так что в приложении можно легко реализовать такие функции, как одновременные скрипты и короутины. Скрипт-контекст также предоставляет интерфейс для извлечения реал-тайм информации, полезную для отладки. [править] Основные особенности C-like синтаксис. Управление памятью. Cтрого-типизированный язык. Лёгкость связывания с кодом на C/C++. Встроенная многопоточность. [править] Пример программы Программа «Hello, world» в простейшем случае выглядит так: void main() { print("Hello world\n"); }
|