首页 > 最新文献

Journal of Historic Buildings and Places最新文献

英文 中文
Coinductive Big-Step Semantics for Concurrency 并发的协归纳大步语义
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-10 DOI: 10.4204/EPTCS.137.6
Tarmo Uustalu
In a paper presented at SOS 2010, we developed a framework for big-step semantics for interactive input-output in combination with divergence, based on coinductive and mixed inductive-coinductive notions of resumptions, evaluation and termination-sensitive weak bisimilarity. In contrast to standard inductively defined big-step semantics, this framework handles divergence properly; in particular, runs that produce some observable effects and then diverge, are not "lost". Here we scale this approach for shared-variable concurrency on a simple example language. We develop the metatheory of our semantics in a constructive logic.
在SOS 2010上发表的一篇论文中,我们基于恢复、评估和终止敏感弱双相似性的共归纳和混合归纳-共归纳概念,开发了一个结合发散的交互式输入输出大步语义框架。与标准的归纳定义的大步语义相比,该框架可以适当地处理散度;特别是,产生一些可观察到的效应,然后发散的运行,不是“丢失”的。这里,我们在一个简单的示例语言上扩展这种方法以实现共享变量并发性。我们在构造逻辑中发展我们的语义元理论。
{"title":"Coinductive Big-Step Semantics for Concurrency","authors":"Tarmo Uustalu","doi":"10.4204/EPTCS.137.6","DOIUrl":"https://doi.org/10.4204/EPTCS.137.6","url":null,"abstract":"In a paper presented at SOS 2010, we developed a framework for big-step semantics for interactive input-output in combination with divergence, based on coinductive and mixed inductive-coinductive notions of resumptions, evaluation and termination-sensitive weak bisimilarity. In contrast to standard inductively defined big-step semantics, this framework handles divergence properly; in particular, runs that produce some observable effects and then diverge, are not \"lost\". Here we scale this approach for shared-variable concurrency on a simple example language. We develop the metatheory of our semantics in a constructive logic.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"6 1","pages":"63-78"},"PeriodicalIF":0.0,"publicationDate":"2013-12-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"72525214","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Static Application-Level Race Detection in STM Haskell using Contracts STM Haskell中使用契约的静态应用级竞争检测
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-10 DOI: 10.4204/EPTCS.137.10
R. Demeyer, Wim Vanhoof
Writing concurrent programs is a hard task, even when using high-level synchronization primitives such as transactional memories together with a functional language with well-controlled side-effects such as Haskell, because the interferences generated by the processes to each other can occur at different levels and in a very subtle way. The problem occurs when a thread leaves or exposes the shared data in an inconsistent state with respect to the application logic or the real meaning of the data. In this paper, we propose to associate contracts to transactions and we define a program transformation that makes it possible to extend static contract checking in the context of STM Haskell. As a result, we are able to check statically that each transaction of a STM Haskell program handles the shared data in a such way that a given consistency property, expressed in the form of a user-defined boolean function, is preserved. This ensures that bad interference will not occur during the execution of the concurrent program.
编写并发程序是一项艰巨的任务,即使在使用高级同步原语(如事务性内存)和具有良好控制副作用的函数式语言(如Haskell)时也是如此,因为进程之间产生的相互干扰可能发生在不同的级别,并且以非常微妙的方式发生。当线程离开或公开的共享数据处于与应用程序逻辑或数据的实际含义不一致的状态时,就会出现问题。在本文中,我们建议将契约与事务关联起来,并定义了一个程序转换,使得在STM Haskell上下文中扩展静态契约检查成为可能。因此,我们能够静态地检查STM Haskell程序的每个事务处理共享数据的方式是否保留了以用户定义的布尔函数形式表示的给定一致性属性。这确保了在并发程序执行期间不会发生不良干扰。
{"title":"Static Application-Level Race Detection in STM Haskell using Contracts","authors":"R. Demeyer, Wim Vanhoof","doi":"10.4204/EPTCS.137.10","DOIUrl":"https://doi.org/10.4204/EPTCS.137.10","url":null,"abstract":"Writing concurrent programs is a hard task, even when using high-level synchronization primitives such as transactional memories together with a functional language with well-controlled side-effects such as Haskell, because the interferences generated by the processes to each other can occur at different levels and in a very subtle way. The problem occurs when a thread leaves or exposes the shared data in an inconsistent state with respect to the application logic or the real meaning of the data. In this paper, we propose to associate contracts to transactions and we define a program transformation that makes it possible to extend static contract checking in the context of STM Haskell. As a result, we are able to check statically that each transaction of a STM Haskell program handles the shared data in a such way that a given consistency property, expressed in the form of a user-defined boolean function, is preserved. This ensures that bad interference will not occur during the execution of the concurrent program.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"5 1","pages":"115-134"},"PeriodicalIF":0.0,"publicationDate":"2013-12-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"74551024","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
From Lock Freedom to Progress Using Session Types 从自由锁到使用会话类型的进程
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-10 DOI: 10.4204/EPTCS.137.2
L. Padovani
Inspired by Kobayashi's type system for lock freedom, we define a behavioral type system for ensuring progress in a language of binary sessions. The key idea is to annotate actions in session types with priorities representing the urgency with which such actions must be performed and to verify that processes perform such actions with the required priority. Compared to related systems for session-based languages, the presented type system is relatively simpler and establishes progress for a wider range of processes.
受Kobayashi的锁自由类型系统的启发,我们定义了一个行为类型系统来确保二进制会话语言的进程。关键思想是在会话类型中用优先级注释操作,优先级表示必须执行这些操作的紧迫性,并验证进程是否以所需的优先级执行这些操作。与基于会话的语言的相关系统相比,所呈现的类型系统相对简单,并为更广泛的过程建立了进展。
{"title":"From Lock Freedom to Progress Using Session Types","authors":"L. Padovani","doi":"10.4204/EPTCS.137.2","DOIUrl":"https://doi.org/10.4204/EPTCS.137.2","url":null,"abstract":"Inspired by Kobayashi's type system for lock freedom, we define a behavioral type system for ensuring progress in a language of binary sessions. The key idea is to annotate actions in session types with priorities representing the urgency with which such actions must be performed and to verify that processes perform such actions with the required priority. Compared to related systems for session-based languages, the presented type system is relatively simpler and establishes progress for a wider range of processes.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"41 1","pages":"3-19"},"PeriodicalIF":0.0,"publicationDate":"2013-12-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"77124876","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 29
Minimising virtual machine support for concurrency 最小化虚拟机对并发性的支持
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-10 DOI: 10.4204/EPTCS.137.11
S. Dobson, A. Dearle, Barry Porter
Co-operative and pre-emptive scheduling are usually considered to be complementary models of threading. In the case of virtual machines, we show that they can be unified using a single concept, the bounded execution of a thread of control, essentially providing a first-class representation of a computation as it is reduced. Furthermore this technique can be used to surface the thread scheduler of a language into the language itself, allowing programs to provide their own schedulers without any additional support in the virtual machine, and allowing the same virtual machine to support different thread models simultaneously and without re-compilation.
协作调度和抢占调度通常被认为是线程的互补模型。在虚拟机的情况下,我们展示了它们可以使用一个单一的概念来统一,即控制线程的有界执行,本质上提供了计算的一等表示,因为它被减少了。此外,该技术还可以用于将语言的线程调度器显示到语言本身中,允许程序提供自己的调度器,而无需在虚拟机中提供任何额外的支持,并允许同一虚拟机同时支持不同的线程模型,而无需重新编译。
{"title":"Minimising virtual machine support for concurrency","authors":"S. Dobson, A. Dearle, Barry Porter","doi":"10.4204/EPTCS.137.11","DOIUrl":"https://doi.org/10.4204/EPTCS.137.11","url":null,"abstract":"Co-operative and pre-emptive scheduling are usually considered to be complementary models of threading. In the case of virtual machines, we show that they can be unified using a single concept, the bounded execution of a thread of control, essentially providing a first-class representation of a computation as it is reduced. Furthermore this technique can be used to surface the thread scheduler of a language into the language itself, allowing programs to provide their own schedulers without any additional support in the virtual machine, and allowing the same virtual machine to support different thread models simultaneously and without re-compilation.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"527 1","pages":"135-141"},"PeriodicalIF":0.0,"publicationDate":"2013-12-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"79611277","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Session Types Go Dynamic or How to Verify Your Python Conversations 会话类型变为动态或如何验证Python会话
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-10 DOI: 10.4204/EPTCS.137.8
R. Neykova
This paper presents the first implementation of session types in a dynamically-typed language - Python. Communication safety of the whole system is guaranteed at runtime by monitors that check the execution traces comply with an associated protocol. Protocols are written in Scribble, a choreography description language based on multiparty session types, with addition of logic formulas for more precise behaviour properties. The presented framework overcomes the limitations of previous works on the session types where all endpoints should be statically typed so that they do not permit interoperability with untyped participants. The advantages, expressiveness and performance of dynamic protocol checking are demonstrated through use case and benchmarks.
本文介绍了在动态类型语言——Python中会话类型的第一个实现。在运行时,整个系统的通信安全由检查执行跟踪是否符合相关协议的监视器来保证。协议是用Scribble编写的,Scribble是一种基于多方会话类型的编排描述语言,为更精确的行为属性添加了逻辑公式。所提出的框架克服了以前在会话类型方面的限制,在会话类型方面,所有端点都应该是静态类型的,这样它们就不允许与非类型的参与者进行互操作。通过用例和基准测试证明了动态协议检查的优点、可表达性和性能。
{"title":"Session Types Go Dynamic or How to Verify Your Python Conversations","authors":"R. Neykova","doi":"10.4204/EPTCS.137.8","DOIUrl":"https://doi.org/10.4204/EPTCS.137.8","url":null,"abstract":"This paper presents the first implementation of session types in a dynamically-typed language - Python. Communication safety of the whole system is guaranteed at runtime by monitors that check the execution traces comply with an associated protocol. Protocols are written in Scribble, a choreography description language based on multiparty session types, with addition of logic formulas for more precise behaviour properties. The presented framework overcomes the limitations of previous works on the session types where all endpoints should be statically typed so that they do not permit interoperability with untyped participants. The advantages, expressiveness and performance of dynamic protocol checking are demonstrated through use case and benchmarks.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"232 1","pages":"95-102"},"PeriodicalIF":0.0,"publicationDate":"2013-12-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"73955913","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
Towards deductive verification of MPI programs against session types 针对会话类型对MPI程序进行演绎验证
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-10 DOI: 10.4204/EPTCS.137.9
Eduardo R. B. Marques, F. Martins, V. Vasconcelos, Nicholas Ng, Nuno Martins
The Message Passing Interface (MPI) is the de facto standard message-passing infrastructure for developing parallel applications. Two decades after the first version of the library specification, MPI-based applications are nowadays routinely deployed on super and cluster computers. These applications, written in C or Fortran, exhibit intricate message passing behaviours, making it hard to statically verify important properties such as the absence of deadlocks. Our work builds on session types, a theory for describing protocols that provides for correct-by-construction guarantees in this regard. We annotate MPI primitives and C code with session type contracts, written in the language of a software verifier for C. Annotated code is then checked for correctness with the software verifier. We present preliminary results and discuss the challenges that lie ahead for verifying realistic MPI program compliance against session types.
消息传递接口(MPI)是用于开发并行应用程序的事实上的标准消息传递基础设施。在第一个库规范版本发布20年后,如今基于mpi的应用程序通常部署在超级计算机和集群计算机上。这些用C或Fortran编写的应用程序表现出复杂的消息传递行为,因此很难静态地验证重要的属性,例如是否存在死锁。我们的工作建立在会话类型的基础上,会话类型是一种描述协议的理论,它在这方面提供了构造正确的保证。我们用会话类型契约注释MPI原语和C代码,这些契约是用C语言的软件验证器的语言编写的,然后用软件验证器检查注释的代码的正确性。我们提出了初步的结果,并讨论了针对会话类型验证实际MPI程序遵从性所面临的挑战。
{"title":"Towards deductive verification of MPI programs against session types","authors":"Eduardo R. B. Marques, F. Martins, V. Vasconcelos, Nicholas Ng, Nuno Martins","doi":"10.4204/EPTCS.137.9","DOIUrl":"https://doi.org/10.4204/EPTCS.137.9","url":null,"abstract":"The Message Passing Interface (MPI) is the de facto standard message-passing infrastructure for developing parallel applications. Two decades after the first version of the library specification, MPI-based applications are nowadays routinely deployed on super and cluster computers. These applications, written in C or Fortran, exhibit intricate message passing behaviours, making it hard to statically verify important properties such as the absence of deadlocks. Our work builds on session types, a theory for describing protocols that provides for correct-by-construction guarantees in this regard. We annotate MPI primitives and C code with session type contracts, written in the language of a software verifier for C. Annotated code is then checked for correctness with the software verifier. We present preliminary results and discuss the challenges that lie ahead for verifying realistic MPI program compliance against session types.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"8 1","pages":"103-113"},"PeriodicalIF":0.0,"publicationDate":"2013-12-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"89492641","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 16
The Glasgow Parallel Reduction Machine: Programming Shared-memory Many-core Systems using Parallel Task Composition 格拉斯哥并行约简机:使用并行任务组合编程共享内存多核系统
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-08 DOI: 10.4204/EPTCS.137.7
Ashkan Tousimojarad, W. Vanderbauwhede
We present the Glasgow Parallel Reduction Machine (GPRM), a novel, flexible framework for parallel task-composition based many-core programming. We allow the programmer to structure programs into task code, written as C++ classes, and communication code, written in a restricted subset of C++ with functional semantics and parallel evaluation. In this paper we discuss the GPRM, the virtual machine framework that enables the parallel task composition approach. We focus the discussion on GPIR, the functional language used as the intermediate representation of the bytecode running on the GPRM. Using examples in this language we show the flexibility and power of our task composition framework. We demonstrate the potential using an implementation of a merge sort algorithm on a 64-core Tilera processor, as well as on a conventional Intel quad-core processor and an AMD 48-core processor system. We also compare our framework with OpenMP tasks in a parallel pointer chasing algorithm running on the Tilera processor. Our results show that the GPRM programs outperform the corresponding OpenMP codes on all test platforms, and can greatly facilitate writing of parallel programs, in particular non-data parallel algorithms such as reductions.
我们提出了格拉斯哥并行约简机(GPRM),一个新的,灵活的框架并行任务组成为基础的多核编程。我们允许程序员将程序结构成任务代码(用c++类编写)和通信代码(用c++的受限子集编写,带有函数语义和并行求值)。本文讨论了实现并行任务组合方法的虚拟机框架GPRM。我们将重点讨论GPIR,这是一种函数式语言,用作运行在GPRM上的字节码的中间表示。通过使用这种语言中的示例,我们展示了任务组合框架的灵活性和强大功能。我们通过在64核Tilera处理器、传统的Intel四核处理器和AMD 48核处理器系统上实现合并排序算法来展示其潜力。我们还将我们的框架与运行在Tilera处理器上的并行指针跟踪算法中的OpenMP任务进行了比较。我们的研究结果表明,GPRM程序在所有测试平台上都优于相应的OpenMP代码,并且可以极大地促进并行程序的编写,特别是非数据并行算法,如约简。
{"title":"The Glasgow Parallel Reduction Machine: Programming Shared-memory Many-core Systems using Parallel Task Composition","authors":"Ashkan Tousimojarad, W. Vanderbauwhede","doi":"10.4204/EPTCS.137.7","DOIUrl":"https://doi.org/10.4204/EPTCS.137.7","url":null,"abstract":"We present the Glasgow Parallel Reduction Machine (GPRM), a novel, flexible framework for parallel task-composition based many-core programming. We allow the programmer to structure programs into task code, written as C++ classes, and communication code, written in a restricted subset of C++ with functional semantics and parallel evaluation. In this paper we discuss the GPRM, the virtual machine framework that enables the parallel task composition approach. We focus the discussion on GPIR, the functional language used as the intermediate representation of the bytecode running on the GPRM. Using examples in this language we show the flexibility and power of our task composition framework. We demonstrate the potential using an implementation of a merge sort algorithm on a 64-core Tilera processor, as well as on a conventional Intel quad-core processor and an AMD 48-core processor system. We also compare our framework with OpenMP tasks in a parallel pointer chasing algorithm running on the Tilera processor. Our results show that the GPRM programs outperform the corresponding OpenMP codes on all test platforms, and can greatly facilitate writing of parallel programs, in particular non-data parallel algorithms such as reductions.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"85 1","pages":"79-94"},"PeriodicalIF":0.0,"publicationDate":"2013-12-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"81231777","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
Session Types in Abelian Logic 会话类型在阿贝尔逻辑
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-08 DOI: 10.4204/EPTCS.137.4
Yoichi Hirai
There was a PhD student who says "I found a pair of wooden shoes. I put a coin in the left and a key in the right. Next morning, I found those objects in the opposite shoes." We do not claim existence of such shoes, but propose a similar programming abstraction in the context of typed lambda calculi. The result, which we call the Amida calculus, extends Abramsky's linear lambda calculus LF and characterizes Abelian logic.
有个博士生说:“我发现了一双木鞋。我在左边放了一个硬币,在右边放了一把钥匙。第二天早上,我在另一双鞋里发现了那些东西。”我们不主张存在这样的鞋子,但在类型化lambda演算的上下文中提出了类似的编程抽象。这个结果,我们称之为Amida演算,扩展了Abramsky的线性演算LF,并刻画了Abelian逻辑。
{"title":"Session Types in Abelian Logic","authors":"Yoichi Hirai","doi":"10.4204/EPTCS.137.4","DOIUrl":"https://doi.org/10.4204/EPTCS.137.4","url":null,"abstract":"There was a PhD student who says \"I found a pair of wooden shoes. I put a coin in the left and a key in the right. Next morning, I found those objects in the opposite shoes.\" We do not claim existence of such shoes, but propose a similar programming abstraction in the context of typed lambda calculi. The result, which we call the Amida calculus, extends Abramsky's linear lambda calculus LF and characterizes Abelian logic.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"17 1","pages":"33-52"},"PeriodicalIF":0.0,"publicationDate":"2013-12-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"77619323","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Embedding Session Types in HML 在html中嵌入会话类型
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-12-01 DOI: 10.4204/EPTCS.137.5
Laura Bocchi, Romain Demangeon
Recent work on the enhancement of multiparty session types with logical annotations enable the effective verification of properties on (1) the structure of the conversations, (2) the sorts of the messages, and (3) the actual values exchanged. In [3] we extend this work to enable the specification and verification of mutual effects of multiple cross-session interactions. Here we give a sound and complete embedding into the Hennessy-Milner logic to justify the expressiveness of the approach in [3] and to provide it with a logical background that will enable us to compare it with similar approaches.
最近关于使用逻辑注释增强多方会话类型的工作能够有效地验证以下方面的属性:(1)对话的结构,(2)消息的种类,以及(3)交换的实际值。在b[3]中,我们扩展了这项工作,使其能够规范和验证多个跨会话交互的相互影响。在这里,我们给出了一个完整的嵌入Hennessy-Milner逻辑的方法,以证明[3]中方法的表达性,并为其提供一个逻辑背景,使我们能够将其与类似的方法进行比较。
{"title":"Embedding Session Types in HML","authors":"Laura Bocchi, Romain Demangeon","doi":"10.4204/EPTCS.137.5","DOIUrl":"https://doi.org/10.4204/EPTCS.137.5","url":null,"abstract":"Recent work on the enhancement of multiparty session types with logical annotations enable the effective verification of properties on (1) the structure of the conversations, (2) the sorts of the messages, and (3) the actual values exchanged. In [3] we extend this work to enable the specification and verification of mutual effects of multiple cross-session interactions. Here we give a sound and complete embedding into the Hennessy-Milner logic to justify the expressiveness of the approach in [3] and to provide it with a logical background that will enable us to compare it with similar approaches.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"3 1","pages":"53-62"},"PeriodicalIF":0.0,"publicationDate":"2013-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"75328384","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Modularizing and Specifying Protocols among Threads 模块化和指定线程间的协议
4区 历史学 0 ARCHAEOLOGY Pub Date : 2013-02-25 DOI: 10.4204/EPTCS.109.6
S. Jongmans, F. Arbab
We identify three problems with current techniques for implementing protocols among threads, which complicate and impair the scalability of multicore software development: implementing synchronization, implementing coordination, and modularizing protocols. To mend these deficiencies, we argue for the use of domain-specific languages (DSL) based on existing models of concurrency. To demonstrate the feasibility of this proposal, we explain how to use the model of concurrency Reo as a high-level protocol DSL, which offers appropriate abstractions and a natural separation of protocols and computations. We describe a Reo-to-Java compiler and illustrate its use through examples.
我们确定了当前实现线程间协议的技术存在的三个问题:实现同步、实现协调和模块化协议,这些问题使多核软件开发的可扩展性变得复杂和损害。为了弥补这些缺陷,我们主张使用基于现有并发模型的领域特定语言(DSL)。为了证明该建议的可行性,我们解释了如何使用并发Reo模型作为高级协议DSL,它提供了适当的抽象和协议和计算的自然分离。我们描述了一个Reo-to-Java编译器,并通过示例说明了它的用法。
{"title":"Modularizing and Specifying Protocols among Threads","authors":"S. Jongmans, F. Arbab","doi":"10.4204/EPTCS.109.6","DOIUrl":"https://doi.org/10.4204/EPTCS.109.6","url":null,"abstract":"We identify three problems with current techniques for implementing protocols among threads, which complicate and impair the scalability of multicore software development: implementing synchronization, implementing coordination, and modularizing protocols. To mend these deficiencies, we argue for the use of domain-specific languages (DSL) based on existing models of concurrency. To demonstrate the feasibility of this proposal, we explain how to use the model of concurrency Reo as a high-level protocol DSL, which offers appropriate abstractions and a natural separation of protocols and computations. We describe a Reo-to-Java compiler and illustrate its use through examples.","PeriodicalId":53164,"journal":{"name":"Journal of Historic Buildings and Places","volume":"76 1","pages":"34-45"},"PeriodicalIF":0.0,"publicationDate":"2013-02-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"79619722","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"历史学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 16
期刊
Journal of Historic Buildings and Places
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1