Hi All,

Had a look through the 'knowledge.scm' and 'imperative.scm' files. Also, 
learning scheme syntax on the fly here... Have a couple of some fundamental 
questions which I believe would aide my understanding:

1. 'Knowledge.scm' 
<https://github.com/opencog/opencog/blob/21ad879d85d31013e59870b895bb0a0aef97242c/opencog/nlp/chatbot-eva/knowledge.scm>
 
:

What are the differences between some very look-alike nodes such as: 
  - Reference Vs ReferenceLink, 
  - WordNode Vs Word, 
  - ConceptNode Vs Concept 
  - AnchorNode Vs Anchor ? 

Also, what do the nodes: "DefinedSchema", "DefinedPredicate" mean? Line 204 
says: 

(Inheritance (Anchor "*-gaze-direction-*") (Concept "model-direction"))

Do the asterisk mean a wild-card matching?

 
2. 'Imperative.scm 
<https://github.com/opencog/opencog/blob/21ad879d85d31013e59870b895bb0a0aef97242c/opencog/nlp/chatbot-eva/imperative-rules.scm>
'

The code here is a bit more involved, but I think I managed to understand 
most of it after reading about scheme a little. A few things I'm still in 
the dark are:

- What do 'DECL' semantically mean in this code? I'm comparing this against 
identifiers such as 'VERB-LIST' or 'LINKS' which are obvious by their names.

 

- I see that rules 'look-rule-1' and 'look-rule-2' have been redefined in 
this code, the second time using a template. I suppose scheme will just 
override the function bindings to these rules, so we won't really have a 
problem running the script. Thus, do we really need to maintain the earlier 
definitions for 'look-rule-1' and 'look-rule-2' ?

 

- Looked at this line over and over again. I still cannot completely parse 
this code against the standard Scheme syntax. How does this line work (or 
what does it do)? I suppose 'stv' stands for 'standard truth value' and 
'print-msg' and 'display' are some scheme keywords for echoing data. Aside 
from just printing, what bindings happen within this statement?

(define (print-msg node) (display (cog-name node)) (newline) (stv 1 1))

-- 
You received this message because you are subscribed to the Google Groups 
"opencog" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/opencog.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/opencog/521f8532-6406-4746-84b1-b1bc0f1b3d2e%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to