Generative Programming 14 HW4 — различия между версиями

Материал из SEWiki
Перейти к: навигация, поиск
м
 
Строка 7: Строка 7:
  
 
Описать генератор, который сможет сгенерить код вида:
 
Описать генератор, который сможет сгенерить код вида:
{code}
+
 
class A{
+
class A {
 
   public List<Class> getDependencies(){
 
   public List<Class> getDependencies(){
 
       return Arrays.asList(B.class);
 
       return Arrays.asList(B.class);
 
   }
 
   }
}
+
}
class B{
+
 
 +
class B{
 
   public List<Class> getDependencies(){
 
   public List<Class> getDependencies(){
 
     return Collections.emptyList();
 
     return Collections.emptyList();
 
   }
 
   }
}
+
}  
{code}
+
  
 
Не обязательно, но полезно: попробуйте реализовать какой-нибудь аспект редактирования. Например, подсветку или outline view (все есть в примере на сайте spoofax'а).
 
Не обязательно, но полезно: попробуйте реализовать какой-нибудь аспект редактирования. Например, подсветку или outline view (все есть в примере на сайте spoofax'а).

Текущая версия на 19:40, 2 декабря 2014

Spoofax: dependency graph, срок сдачи до 16.12.2014

Описать в Spoofax язык для системы, в которой есть
1. Именованные компоненты
2. Бинарное понятие зависимости компонент
То есть, по сути, ориентированный граф с именованными вершинами

Описать генератор, который сможет сгенерить код вида:

class A {
 public List<Class> getDependencies(){
     return Arrays.asList(B.class);
 }
}
class B{
 public List<Class> getDependencies(){
    return Collections.emptyList();
 }
} 

Не обязательно, но полезно: попробуйте реализовать какой-нибудь аспект редактирования. Например, подсветку или outline view (все есть в примере на сайте spoofax'а).