package nuscr
A tool to manipulate and validate Scribble-style multiparty protocols
Install
Dune Dependency
Authors
Maintainers
Sources
nuscr-2.1.1.tbz
sha256=c5a419fd1fdea78fb63b3a3c335b0e6b0f2b08d65b79870565bdcc0f997bc728
sha512=83ef593ed514eeef1b10069af54562833d617d1c338c5adaf82ee5c3ea7ec4569b3643fcbb237b3cb79ce2f579094cbd17217efa5f4e522bd20f67e1df3a7dbd
doc/CHANGES.html
UNRELEASED
2.1.1 (2022-07-18)
Added
- New ways to convert global/local types into LaTeX macros, using mpstmacros
Changed
- Improve documentation for some modules
scr_module
is now an abstract type, whose definition is not exposed- File name will not be reported in error messages if there is none
- JavaScript files in the web version are now minified
- Improve the list of examples in the web version
Fixed
- Fix a panic when duplicate recursion variable exists
- Stacktraces is printed correctly when
NUSCRDEBUG
orDEBUG
env variable is set - Error is raised gracefully when an unbound role is found in the expansion of an
do
block
2.1.0 (2022-05-18)
Added
- A new module
LiteratureSyntax
where global and local type constructors that similar to those used in literature (without extensions) are provided for the convenience of developers. - New command line options to output global and local types in the format of mpstk.
Changed
- Following a change in cmdliner, user errors will result in an error code of 124 instead of 1
- Improved documentation
Fixed
- Fixed an issue that breaks parser generation with menhir
- Unguarded recursions should be correctly reported as errors
2.0.0 (2021-09-03)
Added
- A new pragma system for extensions:
(*# PRAGMA #*)
at the beginning of the input file can enable theory extensions. - Nested Protocol extension, via
NestedProtocols
pragma (by Benito Echarren Serrano) - Refinement Type extension, via
RefinementTypes
pragma (by Fangyi Zhou)
Changed
- New, improved command line interface with cmdliner
- Reorganise code layout
- Recursions immediately after a choice is permitted under some circumstances
Fixed
- Non-distinct choice prefixes now raise an error
- Degenerate recursions in protocols will be removed
- Catch an uncaught exception when user enters a non-existent protocol from CLI
- Merging [end] and [\mu t.t] after projection is now possible
1.1.0 (2020-01-10)
Added
- Export code generation APIs in Lib
Changed
- Modernised Web Interface
- Change signature of
generate_fsm
in Lib - Annotate signature of
project_role
,generate_fsm
with names - Update ppxlib dependency version
- Remove js_of_ocaml dependencies
Deprecated
Fixed
- Fix usage in executable
- Fix non-monadic code generation
Removed
Security
1.0.0 (2019-12-04)
Initial Release
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page