我用的是puppet。puppet是一种声明性语言,我需要为我的代码建模。
我的问题是声明性编程语言的建模语言是什么?
换句话说:我们使用uml为命令式语言建模,但uml不适合声明性编程语言。
Puppet DSL自己建模系统状态。我不认为需要元建模,但是您可以尝试将您的清单转换为图形表示。
你的图中需要三种类型的节点
- 类类型定义
后两者非常相似。
有两种基本类型的关系(边)
-
include
a类- 总是指向类
- 起源于类或定义的类型
-
declare
资源(即,在清单中,资源出现在定义的主体中)- 指向资源或定义类型
- 起源于类或定义的类型
虚拟资源只是资源/定义类型的一种变体,除了declare
边缘之外,还可以作为多个realize
边缘(也来自类或定义)的目标。
我可能缺少一些其他细节,但对于简单的清单,这些应该足够了。