AngelScript
AngelScript | |
---|---|
Класс языка | сценарный язык, реализация языка программирования[вд], эталонная реализация и свободное и открытое программное обеспечение |
Тип исполнения | Интерпретируемый скриптовый язык |
Появился в | 2003 |
Автор | Андреас Йонсон |
Расширение файлов |
.as |
Выпуск | 2.19.0 (27 июнь 2010) |
Система типов | Строгая, статическая |
Основные реализации | AngelCode Scripting Library |
Испытал влияние | Си, C++, D |
Лицензия | лицензия zlib |
Сайт | angelcode.com/ang… (англ.) |
AngelScript — интерпретируемый язык программирования, разработанный специально для использования в качестве скриптового языка в приложениях. Является свободно распространяемым, с открытыми исходными кодами. Портирован на различные платформы. Синтаксис языка основан на хорошо известных C++, Java, C# и D.
Описание
AngelScript представляет собой движок, в котором приложение может регистрировать функции, свойства и типы, которые могут использоваться в скриптах. Скрипты компилируются в модули. Количество используемых модулей варьрируется в зависимости от нужд. Приложение может также использовать различные интерфейсы для каждого модуля с помощью групп конфигурации. Это особенно полезно, когда приложение работает с несколькими типами скриптов, например, GUI, AI и т.д.
Каждый модуль имеет свою собственное пространство скриптов, глобальных переменных и классов. Обычно они не разделяются между модулями, хотя и несколько модулей могут быть построены из одного и того же скрипта. Модули могут взаимодействовать друг с другом через обязательную функцию связывающую функцию. Так как скрипты компилируются в байт-код, AngelScript предоставляет виртуальную машину для выполнения байт-кода, также известного как скрипт-контекст. Приложение может обрабатывать любое число скрипт-контекстов в одно и то же время, хотя большинству приложений хватает только одного. Контексты поддерживают приостановку/возобновление исполнения, так что в приложении можно легко реализовать такие функции, как одновременное выполнение сценариев и сопрограммы. Скрипт-контекст также предоставляет интерфейс для извлечения информации периода выполнения, полезную для отладки.
Основные особенности
- C-подобный синтаксис.
- Управление памятью.
- Строго типизированный язык.
- Лёгкость связывания с кодом на C/C++.
- Встроенная многопоточность.
Пример программы
Программа «Hello, world» в простейшем случае выглядит так:
void main()
{
print("Hello world\n");
}
Ссылки
- Официальный сайт AngelScript (англ.)
- Русская документация (рус.)
- Лекции и статьи на gamedev.ru (рус.)
- Примеры использования (англ.)
Это заготовка статьи об информационных технологиях и вычислительной технике. Помогите Википедии, дополнив её. |