Bill Lin, "Software synthesis of process-based concurrent programs"

siiky

2023/10/08

2024/01/26

2024/01/26

whitepaper,petri_nets,programming,distributed

https://doi.org/10.1145/277044.277182

Paper about a system that converts a C-like language into C/Java, based on an intermediate Petri nets representation. Unfortunately there's no code available?

In contrast, our work is based on a model of asynchrony where the concurrent parts can evolve independently and only synchronize where specified. Recently, we introduced a new Petri net theoretic software synthesis method based on a new Petri net theoretic technique that can synthesize efficient embedded software implementations from asynchronous process-based specifications without the need for a run-time scheduler [11]. This approach has been implemented in a system under development called Picasso. In this paper, we further develop on our approach. We also briefly describe a new Java-based implementation, in addition to our earlier C-based implementation.

[11] Bill Lin, "Efficient Compilation of Process-Based Concurrent Programs without Run-Time Scheduling"

Gjalt G. de Jong, Bill Lin, "A Communicating Petri Net Model for the Design of Concurrent Asynchronous Modules"

The idea of π from §"Static scheduling" is smart, but still unsure how it can work...