Jump to content

Экспромт (среда программирования)

Экспромт
Парадигма Функциональный , мультипарадигмальный
Разработано Эндрю Соренсен
Впервые появился 2005 г .; 19 лет назад ( 2005 )
Стабильная версия
2.5
Дисциплина набора текста Динамический и статический
ТЫ Мак ОС Х
Веб-сайт экспромт .кусок
Под влиянием
Под влиянием
Экспромтом

Impromptu — это Mac OS X среда программирования для живого кодирования . Impromptu построен на языке Scheme , который является членом семейства Lisp языков . Исходный код его ядра открыт как проект Extempore .

Описание

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

Среда позволяет вносить изменения в программу во время выполнения , поэтому переменные и функции могут быть переопределены, и изменения вступят в силу немедленно. Программист также может создавать и планировать код для будущего выполнения, а также события с данными, такие как заметки и графические объекты. Как только событие запланировано, его выполнение продолжается. Цикл выполняется с использованием идиомы, называемой «временной рекурсией», которая работает, когда функция асинхронно планирует будущий вызов самой себя в качестве своего последнего действия.

Библиотека позволяет взаимодействовать с Audio Units для синтеза звука и с графическими слоями, такими как QuickTime , Quartz , Core Image , OpenGL для композиции видео . Код, написанный на Objective-C, можно вызывать из редактора, а платформы Objective-C могут выполнять вызовы интерпретатора Scheme.

Интерпретатор Scheme в Impromptu изначально был создан на основе базовой версии TinyScheme 1.35, но с тех пор он был существенно изменен, чтобы лучше соответствовать контексту живого кодирования. в реальном времени Были добавлены сборщик мусора и интеграция с Objective-C . новый статически типизированный язык под названием Extempore Language Кроме того, в систему интегрирован . Этот язык синтаксически похож на Scheme, но семантически ближе к C и предназначен для синтеза звука в реальном времени и других сложных вычислительных задач. Он обеспечивает вывод типа и компилируется в машинный язык с помощью LLVM .

Пример производительности

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

«Этюд у Кита» — это живое выступление по программированию в «Экспромте» Эндрю Соренсена. Первые две минуты (1:56) тишина, пока исполнитель пишет программу, в которой будет вступление произведения. С этого момента он модифицирует код на лету, чтобы улучшить композицию.

Продолжительность: 11 минут 38 секунд.

Экспромтом

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

Ядро Impromptu было выпущено как Extempore под лицензией в стиле BSD. Он работает как под Linux , так и под Mac OS X. Он включает в себя интерпретатор Scheme, компилятор языка Extempore и планировщик. Привязки к библиотекам Apple отсутствуют, но среда может взаимодействовать с динамическими библиотеками.

См. также

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

Научные статьи

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

Другие источники

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