是否有功能性编程范例的可视化建模语言或风格? [英] Is there a visual modeling language or style for the functional programming paradigm?

查看:138
本文介绍了是否有功能性编程范例的可视化建模语言或风格?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

UML是一种旨在建模软件的标准,它将用OO语言编写,并与Java结合在一起。尽管如此,它是否可能被用于模拟意在编写功能性编程范例的软件?考虑到嵌入式可视化元素,哪些图将变得有用?

是否有一种针对函数式编程的建模语言,更具体地说是Haskell?你推荐什么工具来组合图表?



由OP编辑2009年9月2日:



寻找是代码中最直观,最轻松的代表。易于遵循图表,视觉模型不一定针对其他程序员。我将很快在Haskell开发一款游戏,但因为这个项目是为了我的毕业结论工作,所以我需要介绍某种形式化的解决方案。我想知道是否有与UML + Java标准等效的,但是对于Haskell。
我应该坚持使用storyboard,书面描述,非形式化图表(一些浅流程图图像),非形式化的用例描述吗?

由jcolebrand编辑2012年6月21日:



请注意,提问者最初想要一个可视化的隐喻,现在我们已经有三年了,我们正在寻找更多/更好的工具。没有一个原始的答案真的解决了视觉隐喻设计工具的概念,所以......这就是新的赏金所期望提供的。

解决方案

我们使用定理证明来做形式建模(有验证),比如Isabelle或Coq。有时候我们使用特定于领域的语言(例如Cryptol)来进行高层设计,然后才能派生出低层次的Haskell实现。

通常我们只是使用Haskell作为建模语言,并通过重写派生出实际的实现。

QuickCheck属性也会在设计文档中发挥作用,以及类型和模块分解。


UML is a standard aimed at the modeling of software which will be written in OO languages, and goes hand in hand with Java. Still, could it possibly be used to model software meant to be written in the functional programming paradigm? Which diagrams would be rendered useful given the embedded visual elements?

Is there a modeling language aimed at functional programming, more specifically Haskell? What tools for putting together diagrams would you recommend?

Edited by OP Sept 02, 2009:

What I'm looking for is the most visual, lightest representation of what goes on in the code. Easy to follow diagrams, visual models not necessarily aimed at other programmers. I'll be developing a game in Haskell very soon but because this project is for my graduation conclusion work I need to introduce some sort of formalization of the proposed solution. I was wondering if there is an equivalent to the UML+Java standard, but for Haskell. Should I just stick to storyboards, written descriptions, non-formalized diagrams (some shallow flow-chart-like images), non-formalized use case descriptions?

Edited by jcolebrand June 21, 2012:

Note that the asker originally wanted a visual metphor, and now that we've had three years, we're looking for more/better tools. None of the original answers really addressed the concept of "visual metaphor design tool" so ... that's what the new bounty is looking to provide for.

解决方案

We use theorem provers to do formal modelling (with verification), such as Isabelle or Coq. Sometimes we use domain specific languages (e.g. Cryptol) to do the high level design, before deriving the "low level" Haskell implementation.

Often we just use Haskell as the modelling language, and derive the actual implementation via rewriting.

QuickCheck properties also play a part in the design document, along with type and module decompositions.

这篇关于是否有功能性编程范例的可视化建模语言或风格?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆