如何建模声明性语言

时间:2014-06-14 14:44:41

标签: uml puppet declarative-programming

我正在使用傀儡。 puppet是一种声明性语言,我需要为我的代码建模。

我的问题是声明性编程语言的建模语言是什么?

换句话说:我们使用uml来模拟命令式语言,但uml不适用于声明性编程语言。

1 个答案:

答案 0 :(得分:1)

Puppet DSL自行模拟系统状态。我不认为需要进行元建模,但您可以尝试将清单转换为图形表示。

您的图表中需要三种类型的节点

  1. 已定义类型
  2. 资源
  3. 其中后两者非常相似。

    有两种基本类型的关系(边缘)

    1. include一堂课
      • 总是针对一个班级
      • 来自一个类或定义类型
    2. declare资源(即在清单中,资源出现在定义的正文中)
      • 针对资源或定义类型
      • 来自一个类或定义类型
    3. 虚拟资源只是资源/已定义类型的变体,除realize边缘外,还可以定位多个declare边(也来自类或定义)。

      我可能会遗漏一些其他细节,但对于简单的清单,那些就足够了。