AngelScript: различия между версиями
[отпатрулированная версия] | [непроверенная версия] |
→Преамбула: обновление |
Обновление версии |
||
(не показано 6 промежуточных версий 5 участников) | |||
Строка 1: | Строка 1: | ||
{{Карточка языка программирования |
{{Карточка языка программирования |
||
| name = AngelScript |
|||
| logo = |
|||
| semantics = |
|||
| paradigm = |
|||
| class = [[Интерпретатор|Интерпретируемый]] [[скриптовый язык]] |
|||
| year = 2003 |
|||
| designer = Андреас Йонсон |
|||
| extension = .as |
|||
| latest_release_version = 2.36.1 |
|||
| latest_release_date = [[21 мая]] [[2023]] |
|||
| latest_preview_version = |
|||
| latest_preview_date = |
|||
| typing = Строгая, статическая |
|||
| implementations = AngelCode Scripting Library |
|||
| dialects = |
|||
| influenced_by = [[Си (язык программирования)|Си]], [[C++]], [[D (язык программирования)|D]] |
|||
| influenced = |
|||
| website = http://www.angelcode.com/angelscript/ |
|||
|operating system = кроссплатформенное программное обеспечение}} |
| operating system = кроссплатформенное программное обеспечение |
||
}} |
|||
'''AngelScript''' — [[Интерпретатор|интерпретируемый]] [[язык программирования]], разработанный специально для использования в качестве скриптового языка в приложениях. Является [[свободное программное обеспечение|свободно распространяемым]], с открытыми исходными кодами. Портирован на различные платформы. Синтаксис языка основан на хорошо известных C++, Java, C# и D. |
'''AngelScript''' — [[Интерпретатор|интерпретируемый]] [[язык программирования]], разработанный специально для использования в качестве скриптового языка в приложениях. Является [[свободное программное обеспечение|свободно распространяемым]], с открытыми исходными кодами. Портирован на различные платформы. Синтаксис языка основан на хорошо известных [[C++]], [[Java]], [[C Sharp|C#]] и [[D (язык программирования)|D]]. |
||
== Описание == |
== Описание == |
||
AngelScript представляет собой движок, в котором приложение может регистрировать функции, свойства и типы, которые могут использоваться в скриптах. Скрипты компилируются в модули. Количество используемых модулей |
AngelScript представляет собой движок, в котором приложение может регистрировать функции, свойства и типы, которые могут использоваться в скриптах. Скрипты компилируются в модули. Количество используемых модулей варьируется в зависимости от нужд. Приложение может также использовать различные интерфейсы для каждого модуля с помощью групп конфигурации. Это особенно полезно, когда приложение работает с несколькими типами скриптов, например, [[GUI]], [[Искусственный интеллект|AI]] и т. д. |
||
Каждый модуль имеет своё собственное пространство скриптов, глобальных [[Переменная (программирование)|переменных]] и классов. Обычно они не разделяются между модулями, хотя и несколько модулей могут быть построены из одного и того же скрипта. Модули могут взаимодействовать друг с другом через обязательную связывающую функцию. Так как скрипты компилируются в [[байт-код]], AngelScript предоставляет [[Виртуальная машина|виртуальную машину]] для выполнения [[байт-код]]а, также известного как скрипт-контекст. Приложение может обрабатывать любое число скрипт-контекстов в одно и то же время, хотя большинству приложений хватает только одного. Контексты поддерживают приостановку/возобновление исполнения, так что в приложении можно легко реализовать такие функции, как одновременное выполнение сценариев и [[сопрограмма|сопрограммы]]. Скрипт-контекст также предоставляет интерфейс для извлечения информации периода выполнения, полезную для [[Отладка программы|отладки]]. |
Каждый модуль имеет своё собственное пространство скриптов, глобальных [[Переменная (программирование)|переменных]] и классов. Обычно они не разделяются между модулями, хотя и несколько модулей могут быть построены из одного и того же скрипта. Модули могут взаимодействовать друг с другом через обязательную связывающую функцию. Так как скрипты компилируются в [[байт-код]], AngelScript предоставляет [[Виртуальная машина|виртуальную машину]] для выполнения [[байт-код]]а, также известного как скрипт-контекст. Приложение может обрабатывать любое число скрипт-контекстов в одно и то же время, хотя большинству приложений хватает только одного. Контексты поддерживают приостановку/возобновление исполнения, так что в приложении можно легко реализовать такие функции, как одновременное выполнение сценариев и [[сопрограмма|сопрограммы]]. Скрипт-контекст также предоставляет интерфейс для извлечения информации периода выполнения, полезную для [[Отладка программы|отладки]]. |
Текущая версия от 10:46, 12 декабря 2023
AngelScript | |
---|---|
Класс языка | сценарный язык, реализация языка программирования[вд], эталонная реализация и свободное и открытое программное обеспечение |
Тип исполнения | Интерпретируемый скриптовый язык |
Появился в | 2003 |
Автор | Андреас Йонсон |
Расширение файлов |
.as |
Выпуск | 2.36.1 (21 мая 2023) |
Система типов | Строгая, статическая |
Основные реализации | AngelCode Scripting Library |
Испытал влияние | Си, C++, D |
Лицензия | лицензия zlib |
Сайт | angelcode.com/angelscrip… |
ОС | кроссплатформенное программное обеспечение |
AngelScript — интерпретируемый язык программирования, разработанный специально для использования в качестве скриптового языка в приложениях. Является свободно распространяемым, с открытыми исходными кодами. Портирован на различные платформы. Синтаксис языка основан на хорошо известных C++, Java, C# и D.
Описание
[править | править код]AngelScript представляет собой движок, в котором приложение может регистрировать функции, свойства и типы, которые могут использоваться в скриптах. Скрипты компилируются в модули. Количество используемых модулей варьируется в зависимости от нужд. Приложение может также использовать различные интерфейсы для каждого модуля с помощью групп конфигурации. Это особенно полезно, когда приложение работает с несколькими типами скриптов, например, GUI, AI и т. д.
Каждый модуль имеет своё собственное пространство скриптов, глобальных переменных и классов. Обычно они не разделяются между модулями, хотя и несколько модулей могут быть построены из одного и того же скрипта. Модули могут взаимодействовать друг с другом через обязательную связывающую функцию. Так как скрипты компилируются в байт-код, AngelScript предоставляет виртуальную машину для выполнения байт-кода, также известного как скрипт-контекст. Приложение может обрабатывать любое число скрипт-контекстов в одно и то же время, хотя большинству приложений хватает только одного. Контексты поддерживают приостановку/возобновление исполнения, так что в приложении можно легко реализовать такие функции, как одновременное выполнение сценариев и сопрограммы. Скрипт-контекст также предоставляет интерфейс для извлечения информации периода выполнения, полезную для отладки.
Основные особенности
[править | править код]- C-подобный синтаксис.
- Управление памятью.
- Строго типизированный язык.
- Лёгкость связывания с кодом на C/C++.
- Встроенная многопоточность.
Пример программы
[править | править код]Программа «Hello, world» в простейшем случае выглядит так:
void main()
{
print("Hello world\n");
}
Литература
[править | править код]- Paula Berinstein, Remi Arnaud, Alessandro Ardolino, Simon Franco, Adrien Herubel. Game Development Tool Essentials. — Apress, 2014. — 201 с. — ISBN 9781430267010.
- Michael Dickheiser. Game Programming Gems 6. — Charles River Media, 2006. — 748 с. — ISBN 9781584504504.
Ссылки
[править | править код]- Официальный сайт AngelScript (англ.)
- Лекции и статьи на gamedev.ru (рус.)
Это заготовка статьи о программном обеспечении. Помогите Википедии, дополнив её. |