Skip to content

alcestes/scribble-java

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README for

    scribble-dist-0.4-SNAPSHOT.zip

This distribution is built from the master branch

    https://github.com/scribble/scribble-java/tree/master

by

    mvn [clean] install

(Output written to dist/target)


Issue reporting
---

Bugs and issues can be reported via the github Issues facility.

Or email  rhu1234 [at] doc.ic.ac.uk  excluding the 1234.


Scribble distribution zip contents:
---

- lib            jars needed to run the scribble-java tool
- scribblec.sh   script for running the command line tool


Command line usage:
---

> List command line options.

    ./scribblec.sh --help


> Check well-formedness of global protocols in, e.g., Test.scr.

    ./scribblec.sh Test.scr

Notes:
- Use the -oldwf command line flag to use the simpler syntactic protocol
  well-formedness from the previous version of Scribble.
- Use the -V command line flag to obtain full traces for errors according
  to the new protocol validation (and other details).


> Project local protocol for role "C" of protocol "Proto" in Test.scr

    ./scribblec.sh Test.scr -project Proto C


> Print dot representation of Endpoint FSM for role "C" of protocol "Proto"
  in Test.scr

    ./scribblec.sh Test.scr -fsm Proto C


> Generate Java Endpoint API for role "C" of protocol "Proto"
  in Test.scr

    ./scribblec.sh -d . Test.scr -api Proto C


Examples:
---

> To make an HelloWorld test:

  echo 'module Test; global protocol Proto(role C, role S) {
      Hello() from C to S; }' > Test.scr


Further examples can be found in:

  https://github.com/scribble/scribble-java/tree/master/modules/demos/scrib

The distribution zip does not include these examples.  They can be obtained
as part of the source repository, or separately via the above link.

> E.g. To generate the Java Endpoint API for role "C" of the "Adder"
  protocol from http://www.doc.ic.ac.uk/~rhu/scribble/fase16.pdf

    ./scribblec.sh -d modules/demos/scrib/fase16/src
        modules/demos/scrib/fase16/src/fase16/adder/Adder.scr -api Adder C


Alternative command line usage:
---

To run the Scribble tool directly via java:

  try  scribblec.sh  with the  --verbose  flag

to see the underlying java command with main class, classpath and other args.

Or try (from Nick Ng):

  $ mvn dependency:build-classpath -Dmdep.outputFile=classpath
  $ java -cp $(cat dist/classpath)
        org.scribble.cli.CommandLine [args] MyModule.scr

About

Core components for the Scribble Java tools

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 98.6%
  • GAP 1.4%