Wiki

Clone wiki

stable_chorgram / forewords

Forewords

ChorGram originally was started to support the experimental work related to the theory introduced in PoPL 2015 paper. New features have been added since the initial prototype; in particular, the chain now supports the semantics of choregraphies defined in our ICE 2016 paper and its journal version.

A tutorial is given in chapter 6 of Behavioural Types: from Theory to Tools, a book published by River Publishers. eM has given a more recent tutorial at COORDINATION 2020; his presentation can be watched on the following YouTube videos: part1, part2, and part3.

Roberto and eM started to integrate into ChorGram the pomset-based analysis of choregraphies based on Roberto's COORDINATION 2019 paper and our JLAMP 2018 paper. The integration consists of the files in the subdirectory ./cc/ which are integrated with some ChorGram features (new extensions coming soon). This integration will also include our recent tool for choreographic model-based testing development by Alex Coto, Roberto, and eM whose results where presented in this ICE 2020 paper and this ISoLA 2020 paper.

eM also started to develop the automatic generation of Erlang executables and monitor-based reversibility introduced in this DAIS 2018 paper, but he is too ashemed to make it public. eM is trying to improve on this; do contact him if interested.

This public version of ChorGram provides a polished and extended version of gmc-synthesis and of gmc-synthesis-v0.2 (those old versions are deprecated). Many features are (almost) stable, a few are still work-in-progress, and new variants are often attempted. Since the intial prototype we have

  • improved usability (e.g., better feedback to the user when generalised multiparty compatibility is violated),
  • started to develop a GUI
  • introduces pomset-based analyses
  • experimented with new features to
  • manipuate/analyse the TS (eg highlighting of configurations with some properties; click here for examples of graphical outputs)
  • added pomset based algorithms

A list of references

Updated