diff options
| author | Shinya Sato <shinnya.sato@gmail.com> | 2022-09-17 22:25:50 +0900 |
|---|---|---|
| committer | Shinya Sato <shinnya.sato@gmail.com> | 2022-09-17 22:25:50 +0900 |
| commit | d90c10cd95e399dd7614df76ee06acd1bf721833 (patch) | |
| tree | 42fd557836de39d4a32a303c40f42393906a6e4c /Changelog.md | |
| parent | 4b0da2732d7adcaa7d85db2ee329f8a52ef88c42 (diff) | |
| parent | b10fccefe9a6435328ff9d554995fb5710f74f26 (diff) | |
| download | inpla-d90c10cd95e399dd7614df76ee06acd1bf721833.tar.gz inpla-d90c10cd95e399dd7614df76ee06acd1bf721833.zip | |
Merge branch 'develop'
Diffstat (limited to 'Changelog.md')
| -rw-r--r-- | Changelog.md | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Changelog.md b/Changelog.md index b693579..61cd225 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,4 +1,34 @@ # Change log + +### v0.10.0 (released on 17 September 2022) +#### Polished (inner) +* **New instruction set for reuse active pairs**: Inpla supports annotations to reuse active active pairs by putting (\*L) and (\*R) in front of agents in rules as an experiment implementation. New instruction set is released to reuse active pairs. It was just to reuse only nodes for active pairs, but now we can specify the reuse method in the level of ports. For instance, we take the following rule: + + ``` + A(r) >< B(a,b,c) => (*L)C(r) ~ (*R)B(a,b,c); + ``` + This means that `C(r)` is created on the memory of `A(r)`, and `B(a,b,c)` is reused as it is. This compiled into the following result by the old instruction set. Actually, these active pair agents are reused, but the ID and all ports are specified again the same as MKAGENT. + + ``` + 0: REUSEAGENT1 var11 id:34 var1 + 1: REUSEAGENT3 var12 id:32 var6 var7 var8 + 2: PUSH var11 var12 + 3: RET + ``` + Now, it is compiled as follows: + ``` + 0: CHID_L $34 // The idL is just changed. + 1: PUSH var11 var12 + 2: RET + ``` + There is no significant improvement in terms of execution speed than I expected, but it becomes useful to demonstrate the execution performance obtained by the theoretical analysis. To keep using the old version, make the following uncommented in `config.h`: + + ``` + //#define OLD_REUSEAGENT + ``` + + + ### v0.9.2-3 (released on 22 August 2022) #### Bux fix |
