Аннотация:
Авторы представляют систему, которая по набору правил-ограничений на дизайн и по структурному описанию пользовательского интерфейса (GUI), порождает набор конкретных интерфейсов, каждый из которых по построению соблюдает эти ограничения. Задача, ставящаяся перед системой, описывается как проблема удовлетворения ограничений, после чего на основе реляционного подхода “решатель-из-верификатора” конструируется корректный и полный решатель. Также описывается набор улучшений, делающих предложенный решатель более эффективным.
Ключевые слова:
проектирование интерфейсов, синтез программ, программирование в ограничениях, реляционное программирование, встраиваемый язык miniKanren.