Libraryless. Click here for Pure Java version (9838L/64K).
svoid pb_enableAutoPatterns(PhilosophyBot1 bot, O... _) { optPar bool debug; if (debug) print("pb_enableAutoPatterns"); Set<S> patterns = ciSet(); IVF1<S> onFact = fact -> bot.addFacts(dm_topDownParseToGroupings(fact, patterns)); IVF1<PhilosophyBot1.LogicRule> onRule = rule -> { LS l = uniquifyCI(map(lhs -> philosophyBot_varsToStars(bot, lhs), stringsOnly(philosophyBot_allPartsOfLHS(rule)))); if (debug) print("Patterns in " + rule + ": " + l); LS l2 = listMinusSet(l, patterns); if (nempty(l2)) { if (debug) print("Have new patterns: " + l2); patterns.addAll(l2); bot.updateCodeOnFact(onFact); } }; bot.addCodeOnFact(onFact); bot.addCodeOnRule(onRule); }
download show line numbers debug dex old transpilations
Travelled to 7 computer(s): bhatertpkbcr, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tvejysmllsmz, vouqrxazstgt, xrpafgyirdlv
No comments. add comment
| Snippet ID: | #1027421 | 
| Snippet name: | pb_enableAutoPatterns - grab patterns from every rule, top-down parse every new fact | 
| Eternal ID of this version: | #1027421/11 | 
| Text MD5: | 4d39fe3678dff34c13d3f7add9d416ca | 
| Transpilation MD5: | c1044caf86e79cfb087e87025aafd02b | 
| Author: | stefan | 
| Category: | javax | 
| Type: | JavaX fragment (include) | 
| Public (visible to everyone): | Yes | 
| Archived (hidden from active list): | No | 
| Created/modified: | 2020-03-18 19:28:25 | 
| Source code size: | 749 bytes / 21 lines | 
| Pitched / IR pitched: | No / No | 
| Views / Downloads: | 408 / 571 | 
| Version history: | 10 change(s) | 
| Referenced in: | [show references] |