atomspace
atomspace copied to clipboard
The OpenCog (hyper-)graph database and graph rewriting system
ProtoAtoms such as `FloatValue`, `LinkValue`, etc actually are sequences. For instance `FloatValue` is ``` std::vector ``` Why not rename them `FloatSeq`, etc? It would be more consistent with their meanings,...
Coined in #1911 the `Stateless` atom type would be an abstract type where any atom carrying out stateless computation could be derived from. For instance from that one could define...
`RandomNumberLink` factory use its own instantiation of `MT19937RandGen` instead of `randGen()` singleton, with a hardwired seed, see https://github.com/opencog/atomspace/blob/master/opencog/atoms/core/RandomNumber.cc#L32 Meaning changing the seed via `randGen().seed` will not affect `RandomNumberLink` (as the...
`Variables::operator==` https://github.com/opencog/atomspace/blob/master/opencog/atoms/core/Variables.h#L195-L202 is in fact alpha-equivalence. I think `operator==` should be content based and instead `is_equal` should be renamed `is_alpha_equivalent`, here that the reasons: 1. `operator==` are usually content based,...
I have been working on #833 which are now only called DistributionalValues and there is one big issues atm that needs to be decided. Namely, if we should use Atoms...
The following `tv-mean`, `tv-conf` and `tv-count` defined in https://github.com/opencog/atomspace/blob/master/opencog/scm/opencog/base/utilities.scm#L80 are redundant and should be replaced by `cog-tv-mean`, `cog-tv-confidence` and `cog-tv-count` (or `cog-mean`, `cog-confidence` and `cog-count` if they get renamed).
We likely need (as part of the effort of porting MOSES to the Atomspace) a way to use declarative knowledge about a Schema to actually run it. For instance given...
I'm almost certain we don't want to allow things like ``` Inheritance Concept "A" Handle::UNDEFINED ``` yet `Link::Link` allows it. Shouldn't it check that every outgoing is defined and raise...
Automatic alpha-equivalence of scope links may create inconsistencies. Here's an example ``` scheme@(guile-user)> (define body-1 (Inheritance (Concept "A") (Variable "$X"))) scheme@(guile-user)> (define sc-1 (Scope body-1)) scheme@(guile-user)> (define ev-1 (Evaluation (Predicate...
Might be futile but frankly it's rather annoying to see this mix of camel case and underscore in the atom and atomspace util libraries.