| … | … | @@ -15,6 +15,7 @@ environment. |
| 15 | 15 | |
| 16 | 16 | ## Pair counting agent |
| 17 | 17 | Prototype proof of concept. Implemented in `pair-agent.scm`. |
| 18 | Based on demo in `examples/pair-count.scm`, which explains it in detail. |
| 18 | 19 | Counts word-pairs, observed by looking at a text file. The Sensory API |
| 19 | 20 | (implemented in `(use-modules (opencog sensory))`) is general enough to |
| 20 | 21 | allow arbitrary text sources, including chat. |
| … | … | @@ -56,3 +57,10 @@ Some unresolved issues. |
| 56 | 57 | that have a `Filter` in the middle. |
| 57 | 58 | * End-of-file results in a throw from parser. This is a side effect. |
| 58 | 59 | The throw should happen from the file-reader, directly. |
| 60 | * Update AtomSpace to support an atomic `IncrementLink`. Under the |
| 61 | covers, this would call `asp->increment_count(h, key, fvp->value()));` |
| 62 | So it has the form `(IncrementLink atom key incr zero)` where `incr` |
| 63 | is, for example `(Number 0 0 1)` and `zero` is `(Number 0 0 0)`. Note |
| 64 | that this resembles a generic fold. The alternative to this is a |
| 65 | `AtomicSetValueLink` which holds a lock to make sure the update is |
| 66 | atomic. The risk is that naive users will discover deadlocks. Hmmm. |