You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+14-11Lines changed: 14 additions & 11 deletions
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,13 @@
1
1
# Reversible Erlang
2
2
3
-
An implementation of the reversible semantics for Erlang.
3
+
An implementation of a reversible semantics for Erlang.
4
4
5
-
###Dependencies
5
+
## Dependencies
6
6
7
-
This tool does not have any dependencies, but it uses [wx](http://erlang.org/doc/apps/wx/chapter.html), the Erlang binding of wxWidgets, that is now included in Erlang/OTP.
7
+
This project uses [wx](http://erlang.org/doc/apps/wx/chapter.html), the Erlang binding of wxWidgets.
8
+
Therefore, you might have to [build Erlang/OTP with wxWidgets](http://erlang.org/doc/installation_guide/INSTALL.html#Advanced-configuration-and-build-of-ErlangOTP_Building_Building-with-wxErlang) if you did not in the past, but we recommend you to try to compile and execute the application first.
8
9
9
-
If you have any problem running this application, please make sure that you are using an upgraded version of Erlang/OTP (the tool has been tested with Erlang/OTP 18).
10
-
11
-
### How to use
10
+
## How to use
12
11
13
12
First, compile the project:
14
13
```
@@ -31,17 +30,21 @@ To start using the application:
31
30
Then, the initial state of the system will appear in the State window.
32
31
33
32
You can control the evaluation of a program using two modes:
34
-
***Manual**: Specify a pid and select a firable rule.
33
+
***Manual**: Introduce a `Pid` in the `Pid/MsgId` text box and choose a fireable rule.
35
34
***Automatic**:
36
-
***Forward/Backward**: Given a number of steps N, perform N steps in the selected direction. The fired rules are selected at random.
37
-
***Normalize**: Move the system forward up to a system where the only firable rules are Sched (deliver a message). The fired rules are selected at random.
35
+
***Forward/Backward**: Introduce a number of steps `N` in the `Steps` text box and push the `Forward` or the `Backward` button. Then, `N` evaluation steps will be performed in the chosen direction.
36
+
***Normalize**: Move the system forward up to a system where the only firable rules are Sched (deliver a message).
38
37
39
-
Both modes can be used interchangeably.
38
+
Both modes can be used interchangeably.
40
39
41
-
###Publications
40
+
## Publications
42
41
43
42
This tool is an implementation of the proposed reversible semantics in these publications:
44
43
* Naoki Nishida, Adrián Palacios and Germán Vidal. [A Reversible Semantics for Erlang](http://users.dsic.upv.es/~gvidal/german/lopstr16b/paper.pdf). To be published in *Proceedings of the 26th International Symposium on
45
44
Logic-Based Program Synthesis and Transformation*.
46
45
47
46
[comment]: #(Add pages and year once published --, 2016, pages 28:1-28:18)
47
+
48
+
## Have questions?
49
+
50
+
Check the [Wiki](https://github.com/mistupv/rev-erlang/wiki) for more information.
0 commit comments