aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog.md20
-rw-r--r--README.md8
-rw-r--r--src/inpla.y10
3 files changed, 29 insertions, 9 deletions
diff --git a/Changelog.md b/Changelog.md
index db8b8ac..3892706 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,5 +1,25 @@
# Change log
+### v0.11.3 (released on 29 Feb 2024)
+
+#### Bug Fix
+
+- **Segmentation fault caused by rules of Int and an agent**: Rules of Int and an agent could cause Segmentation fault error, though rules of an agent and Int were safe:
+
+ ```
+ >>> A(r) >< (int x) => r~x;
+ >>> A(r)~3;
+ (1 interactions, 0.00 sec)
+ >>> free ifce;
+ >>> (int x) >< A(r) => r~x;
+ >>> A(r)~3;
+ Segmentation fault
+ ```
+
+ This issue has now been resolved.
+
+
+
### v0.11.2 (released on 16 Feb 2024)
#### Polished
diff --git a/README.md b/README.md
index b9569aa..9467fb3 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
Inpla is a multi-threaded parallel interpreter of interaction nets. Once you write programs for sequential execution, it works also in multi-threaded parallel execution. Each thread is managed on each CPU-core with POSIX-thread library.
-* The current version is 0.11.2, released on **16 Feb 2024**. (See [Changelog.md](Changelog.md) for details.)
+* The current version is 0.11.3, released on **29 Feb 2024**. (See [Changelog.md](Changelog.md) for details.)
* The below graph shows speed-up ratio to threads numbers for programs in the following benchmark table.
![speedup-ratio](pic/benchmark_reuse_v0.11.0.png)
@@ -291,11 +291,9 @@ Electronic Communications of the EASST, Volume 73: Graph Computation Models - Se
## Related Works
-* [Train: Translator of a functional language to interaction nets (Inpla)](https://github.com/inpla/train)
-* [High-order Virtual Machine (HVM)](https://github.com/Kindelia/HVM)
-* [Language, interpreter and compiler for interaction nets](https://github.com/szeiger/interact)
-* [HINet: Interaction Nets in Haskell](http://www.cas.mcmaster.ca/~kahl/Haskell/HINet/)
+* [HINet: Interaction Nets in Haskell](http://www.cas.mcmaster.ca/~kahl/Haskell/HINet/)
+* [High-order Virtual Machine (HVM)](https://github.com/Kindelia/HVM)
diff --git a/src/inpla.y b/src/inpla.y
index 26ffe63..27ad535 100644
--- a/src/inpla.y
+++ b/src/inpla.y
@@ -22,8 +22,8 @@
// ----------------------------------------------
-#define VERSION "0.11.2"
-#define BUILT_DATE "16 Feb 2024"
+#define VERSION "0.11.3"
+#define BUILT_DATE "29 Feb 2024"
// ------------------------------------------------------------------
@@ -7803,12 +7803,14 @@ int set_metaR(Ast *ast) {
}
void set_metaL_as_IntName(Ast *ast) {
- CmEnv_set_symbol_as_meta(ast->left->sym, CmEnv.reg_agentL, NB_INTVAR);
+ // CmEnv_set_symbol_as_meta(ast->left->sym, CmEnv.reg_agentL, NB_INTVAR);
+ CmEnv_set_symbol_as_meta(ast->left->sym, VM_OFFSET_ANNOTATE_L, NB_INTVAR);
}
void set_metaR_as_IntName(Ast *ast) {
- CmEnv_set_symbol_as_meta(ast->left->sym, CmEnv.reg_agentR, NB_INTVAR);
+ // CmEnv_set_symbol_as_meta(ast->left->sym, CmEnv.reg_agentR, NB_INTVAR);
+ CmEnv_set_symbol_as_meta(ast->left->sym, VM_OFFSET_ANNOTATE_L, NB_INTVAR);
}