1 | abstract sclass Agent {
|
2 | Collection<AIConcept> concepts; // input |
3 | new LinkedHashSet<S> statements; // output |
4 | int duplicates; // number of already known statements emitted |
5 | |
6 | abstract void impl(); |
7 | |
8 | void emit(Lisp l) { emit(clUnparse(l)); }
|
9 | |
10 | void emit(S s) {
|
11 | if (!isTruth(s) && statements.add(s)) |
12 | print("> " + s + " - " + conceptLanguageToEnglish(s));
|
13 | else ++duplicates; |
14 | } |
15 | |
16 | void runLive(bool doIt) {
|
17 | concepts = aiConcepts(); |
18 | statements.clear(); |
19 | impl(); |
20 | S s = "Have " + n(statements, "statements") + " to add"; |
21 | if (duplicates != 0) |
22 | s += " (+" + n(duplicates, "duplicate") + ")"; |
23 | print(s); |
24 | if (doIt) {
|
25 | print("ADDING.");
|
26 | addTruth(statements); |
27 | } |
28 | } |
29 | |
30 | void doIt { runLive(true); }
|
31 | void testRun { runLive(false); }
|
32 | |
33 | void runLive(S[] args) {
|
34 | runLive(eqic(get(args, 0), "doit")); |
35 | } |
36 | } |
Began life as a copy of #1007566
download show line numbers debug dex old transpilations
Travelled to 14 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, onxytkatvevr, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
| Snippet ID: | #1007580 |
| Snippet name: | Agent (class for logic agents) |
| Eternal ID of this version: | #1007580/15 |
| Text MD5: | 3f9d9d0858457c8eb7c2787c74b52cd3 |
| Author: | stefan |
| Category: | javax / a.i. |
| Type: | JavaX fragment (include) |
| Public (visible to everyone): | Yes |
| Archived (hidden from active list): | No |
| Created/modified: | 2017-04-05 18:24:33 |
| Source code size: | 908 bytes / 36 lines |
| Pitched / IR pitched: | No / No |
| Views / Downloads: | 834 / 1447 |
| Version history: | 14 change(s) |
| Referenced in: | [show references] |