Оглавление
- 1 Динамический язык программирования
- 1.1 Определение динамических языков программирования
- 1.2 Эмуляция динамических языков
- 1.3 Функции динамических языков
- 1.4 Реализация и оценка
- 1.5 Изменение времени выполнения объекта
- 1.6 Вывод типа и распределение памяти
- 1.7 Рефлексия и макросы
- 1.8 Примеры динамических языков
- 1.9 Сравнение и дальнейшее чтение
- 2 Язык динамического программирования — Википедия
Динамический язык программирования
-
Определение динамических языков программирования
- Динамические языки программирования – это языки, которые выполняют действия во время выполнения, а не во время компиляции.
- Они позволяют добавлять, изменять и расширять программы, объекты и типы данных.
-
Эмуляция динамических языков
- Динамические функции могут быть эмулированы на других языках с разной сложностью и производительностью.
-
Функции динамических языков
- Язык программирования Lisp был первым, кто реализовал многие динамические функции.
- Динамические языки часто имеют динамическую типизацию, но это не всегда так.
- Динамические языки иногда называют языками сценариев, но это не является точным определением.
-
Реализация и оценка
- Функция eval позволяет выполнять код на языке во время выполнения.
- Эрик Мейер и Питер Дрейтон различают генерацию кода во время выполнения и динамическую загрузку.
-
Изменение времени выполнения объекта
- Динамические языки позволяют изменять типы объектов и их поведение во время выполнения.
-
Вывод типа и распределение памяти
- Динамические языки используют вывод типов на основе значений для интерпретации.
- Они неявно выделяют память на основе операций программы.
-
Рефлексия и макросы
- Рефлексия позволяет анализировать типы и метаданные данных.
- Макросы сочетают самоанализ кода с eval и предоставляют доступ к внутренней работе языка.
-
Примеры динамических языков
- Примеры включают Common Lisp, JavaScript, Python, Ruby и другие.
-
Сравнение и дальнейшее чтение
- Статья содержит список популярных динамических языков и ссылки на дополнительные ресурсы.
Полный текст статьи: