英文:
Modelling concurrent programs implemented using CSP
问题
有没有一个被公认的用于通信顺序进程的图形建模语言?
我正在学习如何使用Go实现并发程序,通过CSP。在编写代码之前,我想要探索和建模各种模式/设计。
======== 编辑 ========
已经开始阅读这本书:http://www.usingcsp.com/cspbook.pdf
英文:
Is there a recognised graphical modelling language for Communicating Sequential Processes?
I'm learning how to implement concurrent programs via CSP using Go. Before I write code I want to explore and model various patterns/designs.
======== EDIT ========
Have starting reading this http://www.usingcsp.com/cspbook.pdf
答案1
得分: 1
我用一个名为TERRA/LUNA的工具框架来完成我的论文,它旨在为嵌入式控制系统进行软件开发,但在我的研究所中广泛用于各种软件开发。我认为目前还没有一个被公认的图形建模语言,但是TERRA是一个图形化的CSP和软件架构编辑器,所以也许通过检查他们如何以图形方式实现CSP会有所帮助。简而言之,你可以使用读取器、写入器和端口来使用连接CSP进程的CSP通道,并将它们与其他进程建立关系,如“并行”或“顺序”。一个典型的结构可能是这样的:
还有一些资料记录了该框架的开发过程,并解释了选择实现方式的动机。
英文:
A little bit off-topic but for my thesis I used a tool framework called TERRA/LUNA which aims for software development for Embedded Control Systems but is used heavily for all sorts of software development at my institute.
I don't think there is a " recognised graphical modelling language" yet but
TERRA is a graphical CSP and software architecture editor so maybe it'll help checking how they implement CSP graphically.
In a nut-shell you've got Readers, Writers and Ports in order to use the CSP channels which connect the CSP processes and you can put them all in a relation to other processes like "parallel" or "sequential".
A typical construct could look like this:
There is also material that documents the development of the framework and explains the motivation behind how the implementation was chosen for.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论