×

森林

swMATH ID: 11313
软件作者: 凯瑟琳·费希尔(Kathleen Fisher);Nate Foster;大卫·沃克(David Walker);朱,Kenny Q。
描述: Forest:一种使用文件存储进行编程的语言和工具包。文件存储是存放在传统分层文件系统中的数据文件的结构化集合。许多应用程序使用文件存储作为穷人的数据库,而这些应用程序的正确执行需要存储在磁盘上的文件、目录和符号链接的集合满足各种精确的不变量。此外,所有这些结构都必须具有可接受的所有权、权限和时间戳属性。不幸的是,当前的编程语言不支持记录有关文件存储的假设、检测其中的错误,也不支持安全地从文件存储中加载和存储。par本文介绍了Forest的设计、实现和语义,Forest是一种用于描述文件存储的新的特定于域的语言。该语言使用基于类型的隐喻来指定文件存储的预期结构、属性和不变量。Forest生成加载和存储函数,可以轻松地将磁盘上的数据连接到内存中的同构表示,可以像操作任何其他数据结构一样进行操作。Forest还生成元数据,描述磁盘上的结构符合规范的程度,使错误检测变得容易。简而言之,Forest将类型化编程语言的严格规则扩展到了文件系统的非类型化世界s.{par}我们已在Haskell中将Forest实现为一种嵌入的特定于域的语言。除了生成用于读取、写入和检查文件系统的基础结构之外,我们的实现还生成类型类实例,使构建在任意文件存储上操作的通用工具变得容易。我们通过构建一个文件系统可视化工具、一个文件访问检查器、一个通用查询接口、几个标准UNIX shell工具的描述定向变体和(循环地)一个简单的Forest描述推理引擎来说明此基础结构的实用性。最后,我们在经典树逻辑的启发下,用语义形式化了Forest的一个核心片段,并证明了往返律,表明加载和存储函数的行为是合理的。
主页: 网址:http://www.cs.cornell.edu/~jnfost/papers/forest-draft.pdf
关键词: 特别的数据双向转换数据描述语言特定领域的语言文件系统文件存储通用程序设计哈斯克尔
相关软件: 格拉夫维兹
引用于: 0个文档

标准条款

1出版物描述软件 年份
Forest:一种使用文件存储进行编程的语言和工具包
凯瑟琳·费希尔(Kathleen Fisher);Nate Foster;大卫·沃克(David Walker);朱,Kenny Q。
2011