Giter Club home page Giter Club logo

opencog / opencog Goto Github PK

View Code? Open in Web Editor NEW
2.3K 284.0 726.0 181.86 MB

A framework for integrated Artificial Intelligence & Artificial General Intelligence (AGI)

Home Page: http://wiki.opencog.org/w/Development

License: Other

C 0.44% CMake 1.29% Python 2.97% Shell 0.38% C++ 13.12% Scheme 71.43% Perl 3.31% Makefile 0.01% TeX 1.08% GDB 0.01% PostScript 0.42% Haskell 5.20% Cython 0.35%
agi natural-language natural-language-inference natural-language-understanding robotics robot-controller learning learning-algorithm unsupervised-learning unsupervised-machine-learning

opencog's Introduction

OpenCog

CircleCI

This repo is no longer maintained! Please use the following, instead:

Obsolete! As of 2021, the most interesting and actively maintained parts of this git repo have been split off into their own distinct git repos. What is left here is a mish-mash of unmatained stuff that is in the process of bit-rotting. Some unit tests fail. Some unit tests won't run. Some code won't compile. Perhaps there's some good stuff in here. Perhaps it can be brought back to life and used for something or other. However... for the most part, it is obsolete.


This git repository contains the "OpenCog Framework", which has served as a (scientific, technical) laboratory for researching, exploring and learning how to integrate AI algorithms and systems into humanoid robotic systems. Most of the activity within this particular repo has focused on integrating natural language chat, common-sense reasoning, assorted learning algorithms, and motor control of humanoid robots.

A stated goal of the OpenCog project is to develop artificial general intelligence (AGI) systems. This is all and well; however, what can be found here, in this particular repo, is very far from that. The code here really is ... a laboratory for integrating various types of AI systems. As such, it is a compilation of several decades of work by a large and varying collection of students, researchers, professors and software engineers. As a laboratory, it is filled with all sorts of devices in varying states of working order, from well-polished to mostly-broken.

See also:

  • ROCCA - Rational OpenCog Controlled Agent. This is a different assemblage of assorted OpenCog components, so that they operate within Minecraft, in the OpenAI Gym. The focus is on learning with the pattern miner, and reasoning with PLN.

Overview

Most of the basic components used in OpenCog are distributed across various git repos, (mostly) grouped under https://github.com/opencog

This git repository contains a crude natural language processing pipeline, several embodied chatbots, and some control/action-selection mechanisms. These include:

  • Ghost, a Chatscript-compatible chatbot with additional capabilities for accepting visual sensory input, and for controlling robot movements.

  • OpenPsi, a model of psychological states. Its currently a mashup of two unrelated ideas: a generic rule-class action-selection and planning system, and a model of human psychological states. An open to-do item is to untangle these two.

  • An assortment of natural language processing subsystems, including:

    • Natural language generation (for expressing thoughts as sentences).
    • Natural language input (for reading and hearing).
    • Relex2logic, converting natural language to logic expressions.
    • Assorted chatbots, some of which are embodied.
    • A Lojban tool.

Prerequisites

To build and run the system here, the packages listed below are required. Users of Ubuntu may use the dependency installer from the /opencog/octool repository. Docker containers with OpenCog preconfigured can be found in the opencog/docker repo.

cogutil

Common OpenCog C++ utilities. https://github.com/opencog/cogutil It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

atomspace

OpenCog Atomspace, a sophisticated (hyper-)graph database. https://github.com/opencog/atomspace It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

cogserver

OpenCog CogServer Network Server. https://github.com/opencog/cogserver It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

attention

OpenCog Attention Allocation subsystem. https://github.com/opencog/attention It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

URE

OpenCog Unified Rule Engine. https://github.com/opencog/ure Required for PLN It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

pln

OpenCog Probabilistic Logic Networks reasoning system. https://github.com/opencog/pln It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

spacetime

OpenCog Spacetime Server - locations of objects in space and time. https://github.com/opencog/spacetime It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

ros-behavior-scripting

Visual and auditory senses, robot motor control. https://github.com/opencog/ros-behavior-scripting It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

lg-atomese

Natural Language Parser for English, Russian, other languages. Required for natural language generation, and the chatbot. https://github.com/opencog/lg-atomese It uses exactly the same build procedure as this package. Be sure to sudo make install at the end.

Building OpenCog

Perform the following steps at the shell prompt:

    cd to project root dir
    mkdir build
    cd build
    cmake ..
    make

Libraries will be built into subdirectories within build, mirroring the structure of the source directory root.

Unit tests

To build and run the unit tests, from the ./build directory enter (after building opencog as above):

    make test

opencog's People

Contributors

alex-van-der-peet avatar amebel avatar chenesan avatar czhedu avatar edajade avatar eddiemonroe avatar ferrouswheel avatar githart avatar glicerico avatar hedayat avatar huangdeheng avatar inflector avatar keyvan-m-sadeghi avatar kim135797531 avatar kizzobot avatar leungmanhin avatar linas avatar misgeatgit avatar ngeiswei avatar rodsol avatar rtreutlein avatar sebastianruder avatar shujingke avatar themixed avatar timothywangdev avatar tnick avatar tpsjr7 avatar williampma avatar xiaohui avatar yantrabuddhi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

opencog's Issues

Error with atom_types.h when installing opencog

make install

outputs the following error

CMake Error at opencog/atomspace/cmake_install.cmake:56 (FILE):
file INSTALL cannot find
"/home/nilg/OpenCog/opencog/opencog/atomspace/atom_types.h".
Call Stack (most recent call first):
opencog/cmake_install.cmake:41 (INCLUDE)
cmake_install.cmake:37 (INCLUDE)

global include

While building opencog I've noticed some warnings (unused-result, unused-variable) that may be silenced with a macro like this one:

#ifdef UNUSED
#elif defined(__GNUC__)
# define UNUSED(x) UNUSED_ ## x __attribute__((unused))
#elif defined(__LCLINT__)
# define UNUSED(x) /*@unused@*/ x
#else
# define UNUSED(x) x
#endif

The question is: where to place this file? Inside include or util directory? What name? opencog_defs.h?
Also, I see no version definition in the headers. It may be named opencog_defs.h.in, with CMake generating the file with proper version as defined in main CMakeLists.txt (if there is some value in defining the version).

Cython test not passing after #305

Cython test not passing after #305 :
undefined symbol: _ZN7opencog5Agent13stimulateAtomENS_6HandleEs)

58/123 Testing: Cython
58/123 Test: Cython
Command: "/usr/local/bin/nosetests" "-vs" "/home/cosmo/opencog/src/tests/cython/"
Directory: /home/cosmo/opencog/src/qtbin/tests/cython
"Cython" start time: Sep 23 10:19 PDT
Output:
----------------------------------------------------------
Failure: ImportError (/home/cosmo/opencog/src/qtbin/opencog/cython/opencog/cogserver.so: undefined symbol: _ZN7opencog5Agent13stimulateAtomENS_6HandleEs) ... ERROR
<end of output>
Test time =   2.30 sec
----------------------------------------------------------
Test Failed.
"Cython" end time: Sep 23 10:19 PDT
"Cython" time elapsed: 00:00:02
----------------------------------------------------------

Online Doxygen documentation issues (again)

While attempting to adapt to doxygen changes between versions I introduced another problem:
The modified CMake file used VERSION_GREATER to check the version. It looks like the CMake version has no VERSION_GREATER, as the build bot produces following warning:

CMake Warning at CMakeLists.txt:683 (IF): given arguments: "VERSION_GREATER" "1.8.1" Unknown arguments specified

The reason for the initial change was:

  • to add a custom css to enhance the look of the documentation
  • to add custom header & footer to allow adding opencog banner (not implemented), etc, to better integrate in opencog site

Right now, the easiest solution that I can think of (doesn't involve changing the requirements for doxygen or cmake version) is to drop the custom header/footer and ignore doxygen guidance to use HTML_EXTRA_STYLESHEET.

An alternative solution would be to add a version check macro for CMake in lib directory, but I suspect that would help only with css; older doxygen may not support tags like $navpath.

Link to generated documentation
Link to buildbo page
Link to output of cmake

OpenCog will not compile under Guile 2.0

When ever I try to compile OpenCog under Guile 2.0 I get errors such as cannot find libguile.h and when I attempt to work around these errors by manually entering the path to libguile.h in the C files in OpenCog I get errors like:

[ 35%] Building CXX object opencog/guile/CMakeFiles/smob.dir/SchemePrimitive.cc.o
/home/Mike3620/Downloads/opencog/opencog/guile/SchemePrimitive.cc: In static member function ‘static void opencog::PrimitiveEnviron::init()’:
/home/Mike3620/Downloads/opencog/opencog/guile/SchemePrimitive.cc:30:59: error: invalid conversion from ‘scm_unused_struct* ()()’ to ‘scm_t_subr {aka void}’ [-fpermissive]
In file included from /usr/include/guile/2.0/libguile.h:60:0,
from /home/Mike3620/Downloads/opencog/opencog/guile/SchemeEval.h:14,
from /home/Mike3620/Downloads/opencog/opencog/guile/SchemePrimitive.cc:12:
/usr/include/guile/2.0/libguile/gsubr.h:68:13: error: initializing argument 5 of ‘scm_unused_struct* scm_c_define_gsubr(const char_, int, int, int, scm_t_subr)’ [-fpermissive]
make[2]: *_* [opencog/guile/CMakeFiles/smob.dir/SchemePrimitive.cc.o] Error 1

I am making the switch from Guile 1.8 (which compiles fine) to Guile 2.0 (which doesn't compile) because I was getting stack overflow errors when I used OpenCog compiled with Guile 1.8

Is their a way to either compile OpenCog under Guile 2.0 or make it so that Guile 1.8 does not give stack overflow errors.

Thank you.

cmake can't find cxxtest

cmake produces this output:

-- Cxxtest was not found. Make sure CXXTEST_BIN_DIR is set.

The cxxtestgen executable is in /usr/bin, so I tried

CXXTEST_BIN_DIR=/usr/bin/ cmake ..

and got the same result.

MOSES: stumble on impulse learning

The following fails:

moses -nexp -H cp -y "+(-1 impulse(\$1))"

by contrast, the nearly identical

moses -H cp -y "+(1 impulse(\$1))"

succeeds almost immediately. Maybe there is a problem exploring negative contins?

listUTest throws exception

After pull request #290, listUTest began throwing an exception.
BuildBot: Test # 73: listUTest ***Exception: Other

From LastTest.log:
unrecognized expression a
terminate called after throwing an instance of 'opencog::combo::EvalException'

Add/finish python support in pattern matcher.

The pattern matcher can call any given program or function, including functions written in python. However, the python bindings to opencog are incomplete and non functional.

The place where things need to fixed is here: line 225 and onwards, in /opencog/query/PatternMatcher.cc

The goal here is to call the named python routine, pass it the N different supplied Handles, and get back a return Handle. In principle, PyRun_SimpleString() should be enough, except that it crashes :-(

IndefiniteTruthValueUTest and iostream_bscored_combo_treeUTest are failing on default ocpkg environment

IndefiniteTruthValueUTest and iostream_bscored_combo_treeUTest were failing on my system, so I launched a new 12.04.2 VM and used ocpkg to setup the environment. I confirmed that in this fresh environment, they are also failing.

They are currently passing on BuildBot. I am wondering if anyone has any ideas on what is different in the configuration settings of BuildBot from a fresh ocpkg environment?

I included the output from LastTest.log below.

Test # 21:

----------------------------------------------------------
21/123 Testing:     
21/123 Test: IndefiniteTruthValueUTest
Command: "/home/cosmo/opencog/src/qtbin/tests/atomspace/IndefiniteTruthValueUTest"
Directory: /home/cosmo/opencog/src/qtbin/tests/atomspace
"IndefiniteTruthValueUTest" start time: Sep 13 02:13 PHT
Output:
----------------------------------------------------------
Running 17 testsCOMPUTE DIFF : 0.0740616 DIFF : 0.0750781
COMPUTE DIFF : 0.0740616 DIFF : 0.0750781
COMPUTE DIFF : 0.0370308 DIFF : 0.0367969
......
In IndefiniteTruthValueUTest::testSetAndGetL:
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:355: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:355: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:355: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:355: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:355: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:355: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:355: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:355: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
In IndefiniteTruthValueUTest::testSetAndGetU:
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
/home/cosmo/opencog/src/tests/atomspace/IndefiniteTruthValueUTest.cxxtest:372: Error: Assertion failed: fabs(tv->getCount() - expectedCount) <= 0.01f
.........
Failed 2 of 17 tests
Success rate: 88%
<end of output>
Test time =   0.03 sec
----------------------------------------------------------
Test make Failed.
"IndefiniteTruthValueUTest" end time: Sep 13 02:13 PHT
"IndefiniteTruthValueUTest" time elapsed: 00:00:00
----------------------------------------------------------

Test # 82:

iostream_bscored_combo_treeUTest
82/123 Testing: iostream_bscored_combo_treeUTest
82/123 Test: iostream_bscored_combo_treeUTest
Command: "/home/cosmo/opencog/src/qtbin/tests/learning/moses/iostream_bscored_combo_treeUTest"
Directory: /home/cosmo/opencog/src/qtbin/tests/learning/moses
"iostream_bscored_combo_treeUTest" start time: Sep 13 02:14 PHT

Output: 
Running 1 testoss.str() = 0.5 and($1 $2 or($3 $4)) 
complexity: 4
complexity penalty: 0.100000001490116119384765625
diversity penalty: 0.20000000298023223876953125
penalized score: 0.20000000298023223876953125
behavioral score: [0.25 0 0.25]

In iostream_pbscored_combo_treeUTest::test_iostream_pbscored_combo_tree:
/home/cosmo/opencog/src/tests/learning/moses/iostream_bscored_combo_treeUTest.cxxtest:65: Error: Expected (get_composite_score(bct) == get_composite_score(parsed_bct)), found ({ 00 C1 4B 40 00 00 00 3F ... } != { 00 5F 4B 40 00 00 00 3F ... })
Failed 1 of 1 test
Success rate: 0%
<end of output>
Test time =   0.03 sec
----------------------------------------------------------
Test Failed.
"iostream_bscored_combo_treeUTest" end time: Sep 13 02:14 PHT
"iostream_bscored_combo_treeUTest" time elapsed: 00:00:00
----------------------------------------------------------      

merge #213 broke petaverse

Nil, merge #213 broke petaverseMOSES -- I get this while compiling:

opencog-git/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc: In member function ‘virtual void opencog::moses::moses_learning::operator()()’:
opencog-git/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:168:59: error: no matching function for call to ‘opencog::moses::deme_expander::create_demes(const combo_tree&)’

REST API doesn't respond properly to ?handle=UUID

Expected:
Start a freshly built cogserver instance, with NLP and atomspaceextensions modules
GET http://localhost:17034/rest/0.2/list?handle=1
should return either

{ "complete":false,
"skipped":0,
"total":57,
"result": [ 1 ]
}

or

{
  "complete": true,
  "skipped": 0,
  "total": 1,
  "result": [
    {
      "handle": 1,
      "type": "DefinedLinguisticConceptNode",
      "name": "definite",
      "outgoing": [],
      "incoming": [
        3
      ],
      "sti": 0,
      "lti": 0,
      "truthvalue": {
        "simple": {
          "str": 0,
          "count": 0,
          "conf": 0
        }
      }
    }
  ]
}

(the wiki isn't clear on this.)

Instead, it returns a JSON object with the proper list-response header and all atoms in the atomspace in an array, as the 'result' item.

foreach.h:14:34: error: declaration of namespace ‘boost::BOOST_FOREACH’ conflicts...

[ 0%] Building CXX object opencog/util/CMakeFiles/util.dir/lazy_selector.cc.o
In file included from /home/dhart/opencog/opencog/util/lazy_selector.cc:28:0:
/home/dhart/opencog/opencog/util/foreach.h:14:34: error: declaration of namespace ‘boost::BOOST_FOREACH’ conflicts with
In file included from /usr/include/boost/multi_index/hashed_index.hpp:22:0,
from /home/dhart/opencog/opencog/util/lazy_selector.h:30,
from /home/dhart/opencog/opencog/util/lazy_selector.cc:25:
/usr/include/boost/foreach_fwd.hpp:56:1: error: previous declaration of namespace ‘boost::BOOST_FOREACH’ here
make[3]: *** [opencog/util/CMakeFiles/util.dir/lazy_selector.cc.o] Error 1
make[2]: *** [opencog/util/CMakeFiles/util.dir/all] Error 2
make[1]: *** [opencog/learning/moses/CMakeFiles/moses.dir/rule] Error 2
make: *** [moses] Error 2
(beefymiracle-virgin)dhart@opencog-aristotle:~/opencog_build$

MOSES mux output differs from wiki example

Hello all,

I'm trying the examples on the wiki page (http://wiki.opencog.org/w/MOSES_Tutorial), but I'm getting quite different output from what the wiki page suggests. Based on a fresh pull (1 hour old) of the source code from git.

The wiki page says that if you enter

moses -Hmux -k3

It should come back with

-0 or(and(!#1 #2) and(#1 #3))

However I get:

-304 or(and(or(and(or($2 $9) $1 $3 $11) and(!$1 !$3) and($1 $2 $7) and(!$2 $5)) or(and(!$1 !$7 $8) and(!$2 $9) !$3 $11) or(and($3 $8) $1 $6)) and(!$1 $3 $10))
-304 or(and(or(and(or(and(or(!$4 $6) !$1) $2 $3) or(!$3 $10) $7) and(or($2 $9) $1 $3 $11) and(!$1 !$3) and(!$2 $5)) or(and(!$1 !$7 $8) and(!$2 $9) !$3 $11) or(and($3 $8) $1 $6)) and(!$1 $3 $10))
-464 or(and(or(and(or($1 $5) $3 $11) and(or($2 $3) $7) and(!$1 !$3) and(!$2 $5)) or(and(!$7 $8) and($9 $10) !$3 $11) or($1 $6)) and(!$1 $10))
-464 or(and(or(and(or(!$1 $2 $3) $7) and(or($1 $5) $3 $11) and(!$1 !$3) and(!$2 $5)) or(and(!$7 $8) and($9 $10) !$3 $11) or($1 $6)) and(!$1 $10))
-464 or(and(or(and(or($1 $5) $2 $3 $11) and(or($2 $3) $7) and(!$1 !$3) and(!$2 $5)) or(and(!$7 $8) and($9 $10) !$3 $11) or($1 $6)) and(!$1 $10))
-464 or(and(or(and(or($1 $5) $3 !$7 $11) and(or($2 $3) $7) and(!$1 !$3) and(!$2 $5)) or(and(!$7 $8) and($9 $10) !$3 $11) or($1 $6)) and(!$1 $10))
-464 or(and(or(and(or($1 $5) $3 $11) and(or($2 $3) $7) and(!$1 $2 !$3) and(!$2 $5)) or(and(!$7 $8) and($9 $10) !$3 $11) or($1 $6)) and(!$1 $10))
-464 or(and(or(and(or($1 $5) $3 $11) and(or($2 $3) $7) and(!$1 !$3 $6) and(!$2 $5)) or(and(!$7 $8) and($9 $10) !$3 $11) or($1 $6)) and(!$1 $10))
-464 or(and(or(and(or($1 $5) $3 $11) and(or($2 $3) $7) and(!$1 !$3 !$7) and(!$2 $5)) or(and(!$7 $8) and($9 $10) !$3 $11) or($1 $6)) and(!$1 $10))
-464 or(and(or(and(or($1 $5) $3 $11) and(or($2 $3) $7) and(!$1 !$3 !$10) and(!$2 $5)) or(and(!$7 $8) and($9 $10) !$3 $11) or($1 $6)) and(!$1 $10))

Figured it might have something to do with running it without doing 'make install' first, so I did that (and ldconfig), switched to my home folder (~) and then it came back with:

-136 or(and(or(and(or(and(or(and(!$1 $2) $5) $6) $3) or(!$1 $2 $9)) and($1 $2 $7) and($3 $9)) or(and(or(!$1 $7) or($1 $6) !$3) and(!$1 $10) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and($5 $6) $3) or(!$1 $2 $9)) and($1 $2 $7)) or(and(or(!$1 $7) !$3) and(!$1 $10) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and(!$1 $8) $2 $9) or(and($5 $6) $3)) and($1 $2 $7)) or(and(or(!$1 $7) !$3) and(!$1 $10) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and($5 $6) $3) or(!$1 $2 $9)) and($1 $2 $7)) or(and(or(!$1 !$2) $10) and(or(!$1 $7) !$3) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and($5 $6) $3) or(!$1 $2 $9)) and($1 $2 $7)) or(and(or(!$1 $7) !$3) and(or(!$1 $11) $10) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and($5 $6) $3) or(!$1 $2 $9)) and($1 $2 $7)) or(and(or(!$1 $2) or(!$1 $7) !$3) and(!$1 $10) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and($5 $6) $3) or(!$1 $2 $9)) and($1 $2 $7)) or(and(or(!$1 $7) or($1 $2) !$3) and(!$1 $10) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and($5 $6) $3) or(!$1 $2 $9)) and($1 $2 $7)) or(and(or(!$1 $7) or($1 $6) !$3) and(!$1 $10) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and($5 $6) $3) or(!$1 $2 $9)) and($1 $2 $7)) or(and(or(!$1 $7) or($2 $5) !$3) and(!$1 $10) !$2 $11) or(and($2 $10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))
-160 or(and(or(and(or(and($5 $6) $3) or(!$1 $2 $9)) and($1 $2 $7)) or(and(or(!$1 $7) !$3) and(!$1 $10) !$2 $11) or(and($2 $10) and(!$3 !$10) $1 $8)) and(or(!$1 $5) or(!$2 $6) !$3 $4))

Please let me know if I'm doing something wrong or if it should become a bug report.

Take care,

Alex

make install fails

[ 15%] Built target tree_gen
[ 15%] Generating opencog/cogserver.cpp
Scanning dependencies of target cogserver_cython
[ 15%] Building CXX object opencog/cython/CMakeFiles/cogserver_cython.dir/opencog/cogserver.cpp.o
In file included from /home/leron/projects/devsources/opencog/build/opencog/cython/opencog/cogserver.cpp:322:0:
/home/leron/projects/devsources/opencog/opencog/atomspace/ClassServer.h:35:42: fatal error: opencog/atomspace/atom_types.h: No such file or directory
compilation terminated.
make[2]: *** [opencog/cython/CMakeFiles/cogserver_cython.dir/opencog/cogserver.cpp.o] Error 1
make[1]: *** [opencog/cython/CMakeFiles/cogserver_cython.dir/all] Error 2
make: *** [all] Error 2

MOSES action subtrees for discrete knobs

In order to create test scenarios where MOSES is used for reinforcement learning for procedure evolution for controlling an agent in the Unity embodiment world, the discrete knobs in MOSES need to support "action" subtrees.

As discussed in a conference call with Nil & Ben, this will require some additions to the current code.

The reason is that in this prior commit, a new version of get_candidate was implemented:
34391b5

And, in knobs.h, the structs:
action_subtree_knob
simple_action_subtree_knob

didn't have this method implemented yet:
append_to

https://github.com/opencog/opencog/blob/master/opencog/learning/moses/representation/knobs.h#L454
https://github.com/opencog/opencog/blob/master/opencog/learning/moses/representation/knobs.h#L519

Therefore, MOSES is currently not able to solve problems where the representation types are actions, as defined on page 8 of 'MOSES-QuickGuide.pdf':
http://wiki.opencog.org/wikihome/images/4/4a/MOSES-QuickGuide.pdf

The 'moses-ant-hillclimbing' example program can be used as a test case for issue resolution.

atomspace build on OSX

OSX 10.8, Boost 1.51

%make atomspace
...
[100%] Building CXX object opencog/atomspace/CMakeFiles/atomspace.dir/VersionHandle.cc.o
In file included from /opt/local/include/boost/functional/hash/hash.hpp:495:0,
from /opt/local/include/boost/functional/hash.hpp:6,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]':
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: error: no matching function for call to 'hash_value(const opencog::IndicatorType&)'
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: candidates are:
In file included from /opt/local/include/boost/functional/hash.hpp:6:0,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/hash.hpp:165:57: note: template typename boost::hash_detail::basic_numbers::type boost::hash_value(T)
/opt/local/include/boost/functional/hash/hash.hpp:165:57: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/hash.hpp: In substitution of 'template typename boost::hash_detail::basic_numbers::type boost::hash_value(T) [with T = opencog::IndicatorType]':
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: required from 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/hash.hpp:165:57: error: no type named 'type' in 'struct boost::hash_detail::basic_numbersopencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]':
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/hash.hpp:171:56: note: template typename boost::hash_detail::long_numbers::type boost::hash_value(T)
/opt/local/include/boost/functional/hash/hash.hpp:171:56: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/hash.hpp: In substitution of 'template typename boost::hash_detail::long_numbers::type boost::hash_value(T) [with T = opencog::IndicatorType]':
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: required from 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/hash.hpp:171:56: error: no type named 'type' in 'struct boost::hash_detail::long_numbersopencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]':
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/hash.hpp:177:57: note: template typename boost::hash_detail::ulong_numbers::type boost::hash_value(T)
/opt/local/include/boost/functional/hash/hash.hpp:177:57: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/hash.hpp: In substitution of 'template typename boost::hash_detail::ulong_numbers::type boost::hash_value(T) [with T = opencog::IndicatorType]':
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: required from 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/hash.hpp:177:57: error: no type named 'type' in 'struct boost::hash_detail::ulong_numbersopencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]':
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/hash.hpp:184:36: note: template std::size_t boost::hash_value(T* const&)
/opt/local/include/boost/functional/hash/hash.hpp:184:36: note: template argument deduction/substitution failed:
In file included from /opt/local/include/boost/functional/hash/hash.hpp:495:0,
from /opt/local/include/boost/functional/hash.hpp:6,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'T* const' and 'const opencog::IndicatorType'
In file included from /opt/local/include/boost/functional/hash.hpp:6:0,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/hash.hpp:277:24: note: template<class T, unsigned int N> std::size_t boost::hash_value(const T (&)[N])
/opt/local/include/boost/functional/hash/hash.hpp:277:24: note: template argument deduction/substitution failed:
In file included from /opt/local/include/boost/functional/hash/hash.hpp:495:0,
from /opt/local/include/boost/functional/hash.hpp:6,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const T [N]' and 'const opencog::IndicatorType'
In file included from /opt/local/include/boost/functional/hash.hpp:6:0,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/hash.hpp:283:24: note: template<class T, unsigned int N> std::size_t boost::hash_value(T (&)[N])
/opt/local/include/boost/functional/hash/hash.hpp:283:24: note: template argument deduction/substitution failed:
In file included from /opt/local/include/boost/functional/hash/hash.hpp:495:0,
from /opt/local/include/boost/functional/hash.hpp:6,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'T [N]' and 'const opencog::IndicatorType'
In file included from /opt/local/include/boost/functional/hash.hpp:6:0,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/hash.hpp:290:24: note: template<class Ch, class A> std::size_t boost::hash_value(const std::basic_string<Ch, std::char_traits<_CharT>, A>&)
/opt/local/include/boost/functional/hash/hash.hpp:290:24: note: template argument deduction/substitution failed:
In file included from /opt/local/include/boost/functional/hash/hash.hpp:495:0,
from /opt/local/include/boost/functional/hash.hpp:6,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::basic_string<Ch, std::char_traits<_CharT>, A>' and 'const opencog::IndicatorType'
In file included from /opt/local/include/boost/functional/hash.hpp:6:0,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/hash.hpp:297:57: note: template typename boost::hash_detail::float_numbers::type boost::hash_value(T)
/opt/local/include/boost/functional/hash/hash.hpp:297:57: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/hash.hpp: In substitution of 'template typename boost::hash_detail::float_numbers::type boost::hash_value(T) [with T = opencog::IndicatorType]':
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: required from 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/hash.hpp:297:57: error: no type named 'type' in 'struct boost::hash_detail::float_numbersopencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp: In instantiation of 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType; std::size_t = long unsigned int]':
/opt/local/include/boost/functional/hash/hash.hpp:220:9: required from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType; std::size_t = long unsigned int]'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:86:41: required from here
/opt/local/include/boost/functional/hash/hash.hpp:303:24: note: std::size_t boost::hash_value(std::type_index)
/opt/local/include/boost/functional/hash/hash.hpp:303:24: note: no known conversion for argument 1 from 'const opencog::IndicatorType' to 'std::type_index'
In file included from /opt/local/include/boost/functional/hash/hash.hpp:495:0,
from /opt/local/include/boost/functional/hash.hpp:6,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:28,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/opt/local/include/boost/functional/hash/extensions.hpp:58:17: note: template<class A, class B> std::size_t boost::hash_value(const std::pair<_T1, _T2>&)
/opt/local/include/boost/functional/hash/extensions.hpp:58:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::pair<_T1, _T2>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:67:17: note: template<class T, class A> std::size_t boost::hash_value(const std::vector<_Tp, _Alloc>&)
/opt/local/include/boost/functional/hash/extensions.hpp:67:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::vector<_Tp, _Alloc>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:73:17: note: template<class T, class A> std::size_t boost::hash_value(const std::list<_Tp, _Alloc>&)
/opt/local/include/boost/functional/hash/extensions.hpp:73:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::list<_Tp, _Alloc>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:79:17: note: template<class T, class A> std::size_t boost::hash_value(const std::deque<_Tp, _Alloc>&)
/opt/local/include/boost/functional/hash/extensions.hpp:79:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::deque<_Tp, _Alloc>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:85:17: note: template<class K, class C, class A> std::size_t boost::hash_value(const std::set<_Key, _Compare, _Alloc>&)
/opt/local/include/boost/functional/hash/extensions.hpp:85:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::set<_Key, _Compare, _Alloc>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:91:17: note: template<class K, class C, class A> std::size_t boost::hash_value(const std::multiset<_Key, _Compare, _Alloc>&)
/opt/local/include/boost/functional/hash/extensions.hpp:91:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::multiset<_Key, _Compare, _Alloc>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:97:17: note: template<class K, class T, class C, class A> std::size_t boost::hash_value(const std::map<_Key, _Tp, _Compare, _Alloc>&)
/opt/local/include/boost/functional/hash/extensions.hpp:97:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::map<_Key, _Tp, _Compare, _Alloc>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:103:17: note: template<class K, class T, class C, class A> std::size_t boost::hash_value(const std::multimap<_Key, _Tp, _Compare, _Alloc>&)
/opt/local/include/boost/functional/hash/extensions.hpp:103:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::multimap<_Key, _Tp, _Compare, _Alloc>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:109:17: note: template std::size_t boost::hash_value(const std::complex<_Tp>&)
/opt/local/include/boost/functional/hash/extensions.hpp:109:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::complex<_Tp>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:119:17: note: template<class T, long unsigned int N> std::size_t boost::hash_value(const std::array<_Tp, _Nm>&)
/opt/local/include/boost/functional/hash/extensions.hpp:119:17: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::array<_Tp, _Nm>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:154:24: note: template<class ... T> std::size_t boost::hash_value(const std::tuple<_Elements ...>&)
/opt/local/include/boost/functional/hash/extensions.hpp:154:24: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::tuple<_Elements ...>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:184:24: note: template std::size_t boost::hash_value(const std::shared_ptr<_Tp>&)
/opt/local/include/boost/functional/hash/extensions.hpp:184:24: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::shared_ptr<_Tp>' and 'const opencog::IndicatorType'
/opt/local/include/boost/functional/hash/extensions.hpp:189:24: note: template<class T, class Deleter> std::size_t boost::hash_value(const std::unique_ptr<_Tp, _Dp>&)
/opt/local/include/boost/functional/hash/extensions.hpp:189:24: note: template argument deduction/substitution failed:
/opt/local/include/boost/functional/hash/extensions.hpp:257:34: note: mismatched types 'const std::unique_ptr<_Tp, _Dp>' and 'const opencog::IndicatorType'
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:83:13: note: std::size_t opencog::hash_value(const opencog::VersionHandle&)
/Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:83:13: note: no known conversion for argument 1 from 'const opencog::IndicatorType' to 'const opencog::VersionHandle&'
In file included from /Users/dhart/opencog/opencog/atomspace/VersionHandle.h:29:0,
from /Users/dhart/opencog/opencog/atomspace/VersionHandle.cc:25:
/Users/dhart/opencog/opencog/atomspace/Handle.h:117:20: note: std::size_t opencog::hash_value(const opencog::Handle&)
/Users/dhart/opencog/opencog/atomspace/Handle.h:117:20: note: no known conversion for argument 1 from 'const opencog::IndicatorType' to 'const opencog::Handle&'
make[3]: *** [opencog/atomspace/CMakeFiles/atomspace.dir/VersionHandle.cc.o] Error 1
make[2]: *** [opencog/atomspace/CMakeFiles/atomspace.dir/all] Error 2
make[1]: *** [opencog/atomspace/CMakeFiles/atomspace.dir/rule] Error 2
make: *** [atomspace] Error 2

MOSES: numbered columns don't work any more!?

The example iris dataset /opencog/learning/moses/example-data/iris.data calls for this command line:

moses -i iris.data -u5 -n sin -n log -n exp -n div -x1 -Z1 -W1

but moses gives an error:

terminate called after throwing an instance of 'opencog::AssertionException'
what(): Target 5 not found (/home/linas/src/novamente/src/opencog-git/opencog/comboreduct/table/table_io.cc:851)
Aborted (core dumped)

Theree are multiple places in the documentation that refer to numbered columns ....

"make examples" dependency problem

Alex van der Peet to opencog

Hello all,

I’ve been redoing the setup process for OpenCog in the wiki today to update it to Ubuntu 12.04. It appears the new atom_types.h generation process is not quite perfect yet.

alex@ubuntu:~/src/ochack/bin$ make examples

Building examples

[  5%] Built target attention_atom_types

[  5%] Built target opencog_atom_types

[  5%] Building CXX object examples/atomtypes/CMakeFiles/customatomtypes.dir/CustomAtomTypesTester.cc.o

In file included from /home/alex/src/ochack/opencog/atomspace/TLB.h:29:0,

                 from /home/alex/src/ochack/opencog/atomspace/AtomTable.h:32,

                 from /home/alex/src/ochack/opencog/atomspace/AtomSpaceImpl.h:36,

                 from /home/alex/src/ochack/opencog/atomspace/AtomSpaceAsync.h:10,

                 from /home/alex/src/ochack/opencog/atomspace/AtomSpace.h:34,

                 from /home/alex/src/ochack/examples/atomtypes/CustomAtomTypesTester.cc:27:

/home/alex/src/ochack/opencog/atomspace/Atom.h:33:42: fatal error: opencog/atomspace/atom_types.h: No such file or directory

compilation terminated.

make[6]: *** [examples/atomtypes/CMakeFiles/customatomtypes.dir/CustomAtomTypesTester.cc.o] Error 1

make[5]: *** [examples/atomtypes/CMakeFiles/customatomtypes.dir/all] Error 2

make[4]: *** [all] Error 2

make[3]: *** [CMakeFiles/examples] Error 2

make[2]: *** [CMakeFiles/examples.dir/all] Error 2

make[1]: *** [CMakeFiles/examples.dir/rule] Error 2

make: *** [examples] Error 2

Example errors

I am following http://wiki.opencog.org/w/Creating_a_Mind_Agent_that_does_something_in_C#STI_Updating_Agent but when I try to run it, I get:
/home/alan/downloads/opencog-master/examples/modules/exampleagent.cc: In member function ‘virtual void opencog::ExampleAgent::run()’:
/home/alan/downloads/opencog-master/examples/modules/exampleagent.cc:69:30: error: request for member ‘getAtomSpace’ in ‘opencog::server’, which is of non-class type ‘opencog::BaseServer&(opencog::BaseServer* (*)())’
/home/alan/downloads/opencog-master/examples/modules/exampleagent.cc:72:18: error: ‘sti_t’ does not name a type
/home/alan/downloads/opencog-master/examples/modules/exampleagent.cc:76:24: error: ‘DEFAULTATOMSTI’ was not declared in this scope
/home/alan/downloads/opencog-master/examples/modules/exampleagent.cc:79:112: error: ‘class opencog::AtomSpace’ has no member named ‘getAtomHash’

Help would be appreciated.

Python3 breaks cython build

Reported on mailing list by Roman Treutlein

build:
http://pastebin.com/c00fUrVU
cmake:
http://pastebin.com/bV95e6G7

/home/roman/ochack/opencog/cython/PythonEval.cc: In member function ‘void opencog::PythonEval::printDict(PyObject*)’:
/home/roman/ochack/opencog/cython/PythonEval.cc:158:43: error: ‘PyString_AsString’ was not declared in this scope
make[2]: *** [opencog/cython/CMakeFiles/PythonEval.dir/PythonEval.cc.o] Error 1
make[1]: *** [opencog/cython/CMakeFiles/PythonEval.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

Continuation of bug at:
https://bugs.launchpad.net/opencog/+bug/1063039

error: static assertion failed: std::hash is not specialized for this type

I'm new to opencog and I'm getting this at compile time:

In file included from /usr/include/c++/4.7/bits/stl_bvector.h:1065:0,
from /usr/include/c++/4.7/vector:66,
from /home/eleomok/opencog/opencog/learning/dimensionalembedding/DimEmbedModule.h:28,
from /home/eleomok/opencog/opencog/learning/dimensionalembedding/DimEmbedModule.cc:25:
/usr/include/c++/4.7/bits/functional_hash.h: In instantiation of ‘struct std::hashopencog::Handle’:
/home/eleomok/opencog/opencog/atomspace/Handle.h:132:46: required from here
/usr/include/c++/4.7/bits/functional_hash.h:60:7: error: static assertion failed: std::hash is not specialized for this type
In file included from /home/eleomok/opencog/opencog/atomspace/types.h:35:0,
from /home/eleomok/opencog/opencog/atomspace/TruthValue.h:31,
from /home/eleomok/opencog/opencog/atomspace/Atom.h:32,
from /home/eleomok/opencog/opencog/atomspace/TLB.h:30,
from /home/eleomok/opencog/opencog/atomspace/AtomTable.h:34,
from /home/eleomok/opencog/opencog/atomspace/AtomSpaceImpl.h:36,
from /home/eleomok/opencog/opencog/atomspace/AtomSpaceAsync.h:10,
from /home/eleomok/opencog/opencog/atomspace/AtomSpace.h:34,
from /home/eleomok/opencog/opencog/learning/dimensionalembedding/DimEmbedModule.h:31,
from /home/eleomok/opencog/opencog/learning/dimensionalembedding/DimEmbedModule.cc:25:
/home/eleomok/opencog/opencog/atomspace/Handle.h:132:20: error: template-id ‘operator()<>’ for ‘std::size_t std::hashopencog::Handle::operator()(opencog::Handle) const’ does not match any template declaration
/home/eleomok/opencog/opencog/atomspace/Handle.h:132:78: note: saw 1 ‘template<>’, need 2 for specializing a member function template
make[2]: *** [opencog/learning/dimensionalembedding/CMakeFiles/dimensionalembedding.dir/DimEmbedModule.cc.o] Error 1
make[1]: *** [opencog/learning/dimensionalembedding/CMakeFiles/dimensionalembedding.dir/all] Error 2
make: *** [all] Error 2

"agents-stop" doesn't stop python Mind Agent

I've loaded some mind agents from a python package using "loadpy" command of cogserver and started them using "agents-start". They got activated successfully but they wont get deactivated using "agents-stop", although cogserver sent "Agents stopped successfully".

Build on Mac Mountain Lion misses __ZTIN7opencog175StandardExceptionE

Hello -- I followed the build instructions at

http://wiki.opencog.org/w/Building_OpenCog_on_Mac_OS_X 

successfully and to the letter, then went to

http://wiki.opencog.org/w/MOSES_Tutorial

successfully did

sudo make install

but

sudo ldconfig

said

ldconfig: command not found

finally, i tried

moses

and

moses -Hmux -k3

and got the following, in both cases

dyld: Symbol not found: __ZTIN7opencog17StandardExceptionE
  Referenced from: /usr/local/lib/libcomboreduct.dylib
  Expected in: flat namespace
 in /usr/local/lib/libcomboreduct.dylib
Trace/BPT trap: 5

94% tests passed, 7 tests failed out of 124

After following the "Installing OpenCog for Noobs" guide on Ubuntu 13.04 I get the following tests failing:

The following tests FAILED:
 44 - BuggyStackUTest (Failed)
 45 - VarTypeNotUTest (Failed)
 46 - MatchLinkUTest (Failed)
 47 - UnorderedUTest (Failed)
 48 - StackMoreUTest (Failed)
 53 - MathUTest (Failed)
 99 - DeterminismUTest (OTHER_FAULT)
Errors while running CTest
make[3]: *** [CMakeFiles/test] Error 8
make[2]: *** [CMakeFiles/test.dir/all] Error 2
make[1]: *** [CMakeFiles/test.dir/rule] Error 2
make: *** [test] Error 2

This appears even after creating the symbolic links to support the new folder structure.

The error seems similar to the one described here:
https://groups.google.com/forum/#!msg/opencog/JvkTP5et3_A/F_x83Sg-e_wJ

Except I am also getting tests 53 and 99 failing.

Any idea if I am doing something wrong or how I can fix them. Ideally I would like a fully working environment before I start attempting further tutorials.

Thanks,
Graeme

Getting started ; missing package for building, starting the server, etc

On Ubuntu 12.10, to successfuly build I had to do this, which is not mentioned in the README :

sudo apt-get install libboost-all-dev

which corresponds to Boost libraries.
So, altogether the dependencies gathering step was :

sudo add-apt-repository https://launchpad.net/~opencog-dev/+archive/ppa
sudo apt-get install libboost-all-dev cmake guile-1.8-dev libgsl0-dev libcurl4-gnutls-dev libexpat1-dev libsdl1.2-dev libsdl-gfx1.2-dev unixodbc-dev libxerces-c2-dev libxmlrpc-c-dev

But there are problems further down the road:

~/src/w/opencog/bin/ % make test
[ 2%] Built target smob
[ 2%] Built target opencog_atom_types
[ 6%] Built target util
[ 15%] Built target atomspace
[ 15%] Built target persist
[ 16%] Built target xml
[ 19%] Built target server
[ 19%] Built target dimensionalembedding
[ 19%] Generating DimEmbedUTest.cpp
/bin/sh: 1: /usr/bin/cxxtestgen.py: not found
make[3]: *** [tests/learning/dimensionalembedding/DimEmbedUTest.cpp] Erreur 127
make[2]: *** [tests/learning/dimensionalembedding/CMakeFiles/DimEmbedUTest.dir/all] Erreur 2
make[1]: *** [CMakeFiles/test.dir/rule] Erreur 2
make: *** [test] Erreur 2

It appears that /usr/bin/cxxtestgen.py is replaced by:
/usr/bin/cxxtestgen

in cxxtest package as provided by the opencog ppa; indeed:

% ls -l /usr/bin/cxxtest*
lrwxrwxrwx 1 root root 27 juin 18 05:09 /usr/bin/cxxtestgen -> ../share/cxxtest/cxxtestgen

A simple workaround is (as there are references to cxxtestgen.py in many places ) :
sudo ln -s /usr/bin/cxxtestgen /usr/bin/cxxtestgen.py

Final result:
95% tests passed, 5 tests failed out of 93

Total Test time (real) = 154.76 sec

The following tests FAILED:
32 - BasicSaveUTest (Failed)
55 - MathUTest (Failed)
60 - RESTfulTest (Failed)
72 - procedure_repositoryUTest (Failed)
92 - feature_selectionUTest (Failed)
Errors while running CTest

Now I'm blocked, given the README instructions: I can't start the server or the interactive shell :

% bin/opencog/server/cogserver -c tests/server/atomSpace.xml
[ERROR] invalid configuration entry (line 2) (/home/jmv/src/w/opencog/opencog/util/Config.cc:206

MOSES: iris.data dataset doesn't work any more.

The iris dataset opencog/learning/moses/example-data/iris.data doesn't work any more:

moses -i ../opencog/learning/moses/example-data/iris.data -uclass -n sin -n log -n exp -n div -x1 -Z1 -W1

returns

-100 Iris-versicolor
complexity: 0
complexity penalty: 0
diversity penalty: 0
penalized score: -100

The moses log file explains more:

[ERROR] contin_interpreter does not handle builtin 0< (/opencog-git/opencog/comboreduct/interpreter/interpreter.cc:201)

I guess we need a unit test for this ...

Error compiling opencog/viterbi/parser.cc

/usr/src/aiprobabilistic/opencog/opencog/viterbi/parser.cc:20:36: fatal error: link-grammar/read-dict.h: No such file or directory

I tried with link-grammar 4.7.8 and 4.7.11, but neither seems to install read-dict.h.

PyMindAgent.cc

OS X 10.8.2, gcc 4.7.2, boost 1.52

Linking CXX shared library libPythonEval.dylib
[ 83%] Built target PythonEval
Scanning dependencies of target PythonModule
[ 83%] Building CXX object opencog/cython/CMakeFiles/PythonModule.dir/PythonModule.cc.o
[ 83%] Building CXX object opencog/cython/CMakeFiles/PythonModule.dir/PyMindAgent.cc.o
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/basic_ios.h:39:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:45,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:242:53: error: macro "toupper" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:271:53: error: macro "tolower" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:814:53: error: macro "toupper" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:847:53: error: macro "tolower" passed 2 arguments, but takes just 1
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/basic_ios.h:39:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:45,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2529:44: error: macro "isspace" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2547:44: error: macro "isupper" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2553:44: error: macro "islower" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2559:44: error: macro "isalpha" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2583:44: error: macro "isalnum" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2595:44: error: macro "toupper" passed 2 arguments, but takes just 1
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2601:44: error: macro "tolower" passed 2 arguments, but takes just 1
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/basic_ios.h:39:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:45,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:227:7: error: 'btowc' is not a type
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:242:7: error: expected ';' at end of member declaration
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:243:7: error: expected unqualified-id before '{' token
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:256:7: error: 'btowc' is not a type
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:271:7: error: expected ';' at end of member declaration
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:272:7: error: expected unqualified-id before '{' token
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: In member function 'std::__ctype_abstract_base<_CharT>::char_type std::__ctype_abstract_base<_CharT>::towupper(int (*)(std::__ctype_abstract_base<_CharT>::char_type)) const':
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:228:33: error: '__c' was not declared in this scope
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: In member function 'std::__ctype_abstract_base<_CharT>::char_type std::__ctype_abstract_base<_CharT>::towlower(int (*)(std::__ctype_abstract_base<_CharT>::char_type)) const':
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:257:33: error: '__c' was not declared in this scope
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: At global scope:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:797:7: error: 'btowc' is not a type
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:814:7: error: expected ';' at end of member declaration
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:815:7: error: expected unqualified-id before '{' token
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:830:7: error: 'btowc' is not a type
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:847:7: error: expected ';' at end of member declaration
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:848:7: error: expected unqualified-id before '{' token
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: In member function 'std::ctype<char>::char_type std::ctype<char>::towupper(int (*)(std::ctype<char>::char_type)) const':
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:798:33: error: '__c' was not declared in this scope
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: In member function 'std::ctype<char>::char_type std::ctype<char>::towlower(int (*)(std::ctype<char>::char_type)) const':
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:831:33: error: '__c' was not declared in this scope
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/basic_ios.h:39:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:45,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: At global scope:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2529:5: error: 'std::isspace' declared as an 'inline' variable
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2529:5: error: template declaration of 'bool std::isspace'
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2530:7: error: expected primary-expression before 'return'
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2530:7: error: expected '}' before 'return'
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2535:31: error: 'locale' does not name a type
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: In function 'bool isprint(_CharT, const int&)':
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2536:14: error: 'use_facet' was not declared in this scope
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2536:14: note: suggested alternative:
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_classes.h:789:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/ios_base.h:43,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:43,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_classes.tcc:130:5: note:   'std::use_facet'
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/basic_ios.h:39:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:45,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2536:24: error: 'ctype' was not declared in this scope
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2536:24: note: suggested alternative:
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/string:45:0,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:26,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/localefwd.h:123:11: note:   'std::ctype'
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/basic_ios.h:39:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:45,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2536:36: error: expected primary-expression before '>' token
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2536:38: error: expected primary-expression before '>' token
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2536:47: error: request for member 'is' in '__loc', which is of non-class type 'const int'
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2536:50: error: 'ctype_base' has not been declared
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: At global scope:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2541:31: error: 'locale' does not name a type
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: In function 'bool iscntrl(_CharT, const int&)':
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2542:14: error: 'use_facet' was not declared in this scope
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2542:14: note: suggested alternative:
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_classes.h:789:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/ios_base.h:43,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:43,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_classes.tcc:130:5: note:   'std::use_facet'
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/basic_ios.h:39:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:45,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2542:24: error: 'ctype' was not declared in this scope
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2542:24: note: suggested alternative:
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/string:45:0,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:26,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/localefwd.h:123:11: note:   'std::ctype'
In file included from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/basic_ios.h:39:0,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ios:45,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/ostream:40,
                 from /usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/iostream:40,
                 from /usr/local/include/boost/assert.hpp:82,
                 from /usr/local/include/boost/smart_ptr/scoped_ptr.hpp:14,
                 from /usr/local/include/boost/scoped_ptr.hpp:14,
                 from /Users/krs/git/opencog/opencog/atomspace/AtomSpace.h:32,
                 from /Users/krs/git/opencog/opencog/server/Agent.h:31,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.h:30,
                 from /Users/krs/git/opencog/opencog/cython/PyMindAgent.cc:2:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2542:36: error: expected primary-expression before '>' token
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2542:38: error: expected primary-expression before '>' token
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2542:47: error: request for member 'is' in '__loc', which is of non-class type 'const int'
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2542:50: error: 'ctype_base' has not been declared
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h: At global scope:
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2547:5: error: 'isupper' declared as an 'inline' variable
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2547:5: error: template declaration of 'bool isupper'
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2548:7: error: expected primary-expression before 'return'
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2548:7: error: expected '}' before 'return'
/usr/local/Cellar/gcc/4.7.2/gcc/lib/gcc/x86_64-apple-darwin12.2.0/4.7.2/../../../../include/c++/4.7.2/bits/locale_facets.h:2548:75: error: expected declaration before '}' token
make[2]: *** [opencog/cython/CMakeFiles/PythonModule.dir/PyMindAgent.cc.o] Error 1
make[1]: *** [opencog/cython/CMakeFiles/PythonModule.dir/all] Error 2
make: *** [all] Error 2

PythonModuleUTest crashes.

PythonModuleUTest was passing right before pull request #171 Its now crashing, with this message:

$ ./tests/cython/PythonModuleUTest
[2013-05-10 15:45:07:437] [INFO] Initializing ClassServer
[INFO] Using config file found at: /opencog-git/build/tests/cython/pymodule.conf
[2013-05-10 15:45:07:472] [INFO] Cache lru_cache_threaded
[2013-05-10 15:45:07:475] [INFO] Loading module "./opencog/cython/libPythonModule.so"
[2013-05-10 15:45:07:551] [INFO] [PythonModule] Initialising Python CogServer module.
[2013-05-10 15:45:07:551] [INFO] Cache lru_cache_threaded
[2013-05-10 15:45:07:551] [INFO] PythonEval::init Initialising python evaluator.
Running 4 tests[2013-05-10 15:45:07:687] [INFO] unknown opencog::Request command: loadpy

In PythonModuleUTest::testLoadExceptionAgent:
/opencog-git/tests/cython/PythonModuleUTest.cxxtest:116: Error: Assertion failed: loadpyRequest != __null
Segmentation fault (core dumped)

cmake reports bazaar errors

Even though I've cloned the repo from github, the cmake scripts contain some
bazaar references and dependencies:

miranda$ cmake .. 
-- The C compiler identification is GNU 4.7.1
-- The CXX compiler identification is GNU 4.7.1
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Boost version: 1.49.0
-- Found the following Boost libraries:
--   date_time
--   filesystem
--   regex
--   serialization
--   signals
--   system
--   thread
-- Found Boost::program_options
-- Found Boost::math
-- Found CURL: /usr/lib/x86_64-linux-gnu/libcurl.so (found version "7.26.0") 
-- Found EXPAT: /usr/lib/x86_64-linux-gnu/libexpat.so (found version "2.1.0") 
-- Expat XML parser found.
-- Guile was found.
-- HyperTable was not found. Make sure HYPERTABLE_LIBRARY and HYPERTABLE_INCLUDE_DIR are set.-- Hypertable not found; the experimental distributed persistence DB needs it.                                                                        [68/1855]
-- Found MPI_C: /usr/lib/openmpi/lib/libmpi.so;/usr/lib/openmpi/lib/libopen-rte.so;/usr/lib/openmpi/lib/libopen-pal.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/
lib/x86_64-linux-gnu/libnsl.so;/usr/lib/x86_64-linux-gnu/libutil.so;/usr/lib/x86_64-linux-gnu/libm.so;/usr/lib/x86_64-linux-gnu/libdl.so  
-- Found MPI_CXX: /usr/lib/openmpi/lib/libmpi_cxx.so;/usr/lib/openmpi/lib/libmpi.so;/usr/lib/openmpi/lib/libopen-rte.so;/usr/lib/openmpi/lib/libopen-pal.so;/us
r/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libnsl.so;/usr/lib/x86_64-linux-gnu/libutil.so;/usr/lib/x86_64-linux-gnu/libm.so;/usr/lib/x86_64-linu
x-gnu/libdl.so  
-- MPI was found.
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so
-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libGL.so  
-- OpenGL was found.
-- Found these protobuf libs: /usr/lib/libprotobuf.so
-- Found PROTOBUF: /usr/lib/libprotobuf.so  
-- Protobuf was found.
-- Found PythonInterp: /usr/bin/python (found version "2.7.3") 
-- Found PythonLibs: /usr/lib/libpython3.2mu.so (found version "3.2.3")
-- Python libs found.                                                                                                                                 
-- Python destination dir found: /usr/lib/python2.7/dist-packages
-- Looking for include file pthread.h
-- Looking for include file pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found.
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found SDL: /usr/lib/x86_64-linux-gnu/libSDLmain.a;/usr/lib/x86_64-linux-gnu/libSDL.so;-lpthread  
-- SDL was found.
-- SDL_gfx was found
-- Found Tclsh: /usr/bin/tclsh (found version "8.5") 
-- Could NOT find TCL (missing:  TCL_LIBRARY TCL_INCLUDE_PATH) 
-- Could NOT find TCLTK (missing:  TCL_LIBRARY TCL_INCLUDE_PATH TK_LIBRARY TK_INCLUDE_PATH) 
-- Could NOT find TK (missing:  TK_LIBRARY TK_INCLUDE_PATH) 
-- TCL shell was found here: /usr/bin/tclsh
-- UnixODBC was found.
-- Valgrind Prefix: 
-- Could NOT find VALGRIND (missing:  VALGRIND_INCLUDE_DIR VALGRIND_PROGRAM) 
-- VALGRIND missing: needed for thread debugging.
-- Found Xerces-C: /usr/lib/libxerces-c.so
--               : /usr/include
--        Version: 2.8.0
-- Found Xerces 2.8.0 -- /usr/lib/libxerces-c.so
-- Found these zmq libs: /usr/lib/x86_64-linux-gnu/libzmq.so   
-- ZeroMQ was found.
bzr: ERROR: Not a branch: "/home/krs/git/opencog/".
-- Cxxtest was not found. Make sure CXXTEST_BIN_DIR is set.
CMake Error at /usr/share/cmake-2.8/Modules/CPack.cmake:395 (message):
  CPack package description file: "/home/krs/git/opencog/README" could not be
  found.
Call Stack (most recent call first):
  /usr/share/cmake-2.8/Modules/CPack.cmake:399 (cpack_check_file_exists)
  CMakeLists.txt:623 (INCLUDE)


-- Found Doxygen: /usr/bin/doxygen (found version "1.8.1.2") 
bzr: ERROR: Not a branch: "/home/krs/git/opencog/".
bzr: ERROR: Not a branch: "/home/krs/git/opencog/".

The following components will be built:
-----------------------------------------------
   AtomSpace         - A weighted and typed hypergraph database.
   Attention         - Agents for attention allocation dynamics.
   ComboReduct       - Library for reduction of combo program trees.
   CythonBinding     - Cython (python) bindings.
   Dim. Embedding    - Compute dimensional embedding of the AtomSpace.
   Doxygen           - Code documentation.
   Embodiment        - Architecture for embodiment.
   FeatureSelection  - MOSES based feature selection tool.
   MOSES             - Meta-Optimizing Semantic Evolutionary Search.
   SchemeBinding     - Scheme bindings and shell.
   Server            - The CogServer.
   Spatial           - Vizualisation of the 3D spacemap.
   SQL Persist       - Interfaces for SQL persistance of the AtomSpace.
   Ubigraph          - Visualisation of the AtomSpace.
   Util              - General utility library.
   WebInterface      - Web server and REST API.

The following components WILL NOT be built:
-----------------------------------------------
   Hypertable        - HyperTable for scalable persistance (experimental).

-- Configuring incomplete, errors occurred!

Build errors, fresh pull

Fresh pull from < 1 hour ago. First an atom_types.h error:

[ 12%] Building CXX object opencog/ubigraph/CMakeFiles/ubigraph.dir/UbigraphModule.cc.o
In file included from /home/alex/ocfresh/opencog/atomspace/AtomTable.h:35:0,
from /home/alex/ocfresh/opencog/atomspace/AtomSpaceImpl.h:36,
from /home/alex/ocfresh/opencog/atomspace/AtomSpaceAsync.h:10,
from /home/alex/ocfresh/opencog/atomspace/AtomSpace.h:34,
from /home/alex/ocfresh/opencog/ubigraph/UbigraphModule.cc:34:
/home/alex/ocfresh/opencog/atomspace/ClassServer.h:35:42: fatal error: opencog/atomspace/atom_types.h: No such file or directory
compilation terminated.
make[2]: *** [opencog/ubigraph/CMakeFiles/ubigraph.dir/UbigraphModule.cc.o] Error 1
make[1]: *** [opencog/ubigraph/CMakeFiles/ubigraph.dir/all] Error 2
make: *** [all] Error 2

Then I go into build/opencog/atomspace, do make there, so I have my .h file now. Then I go back to /build to do make, and it fails on some Cython / Python stuff.

/home/alex/ocfresh/opencog/reasoning/pln/Testing.cc:16:46: fatal error: opencog/cython/logic_wrapper_api.h: No such file or directory
compilation terminated.
make[2]: *** [opencog/reasoning/pln/CMakeFiles/pln.dir/Testing.cc.o] Error 1
make[1]: *** [opencog/reasoning/pln/CMakeFiles/pln.dir/all] Error 2
make: *** [all] Error 2.

I have the /build/opencog/cython/logic_wrapper_api.h in my OTHER OpenCog folder tree, I'm guessing this is another one of those files that gets generated during build.

The logic_wrapper_api.h shows up in /cython/CMakeLists.txt but also in /reasoning/pln/Testing.cc. Since this is what it's building before the error, I guess there's a dependency missing here?

I added a dependency from pln to cython in the CMakeLists.txt in /opencog/reasoning/pln, but that didn't fix it.

I'll keep looking at it, see what I can learn from fixing it, but it's dinner time first.

make moses errors on OSX 10.8.4

I just followed the wiki on how to build on OSX and got an error :

[ 75%] Building CXX object opencog/learning/feature-selection/CMakeFiles/feature_selection.dir/algo/simple.cc.o
In file included from /Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.cc:27:0:
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:74:5: error: 'uint' does not name a type
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h: In constructor 'opencog::ScoredFeatureSetGreater::ScoredFeatureSetGreater()':
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:51:9: error: 'seed' was not declared in this scope
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h: In member function 'bool opencog::ScoredFeatureSetGreater::operator()(const ScoredFeatureSet&, const ScoredFeatureSet&) const':
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:61:9: error: 'uint' was not declared in this scope
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:61:14: error: expected ';' before 'ix'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:62:14: error: expected ';' before 'ox'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:64:14: error: expected ';' before 'iy'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:65:14: error: expected ';' before 'oy'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:67:16: error: 'ox' was not declared in this scope
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:67:21: error: 'oy' was not declared in this scope
In file included from /opt/local/include/boost/variant.hpp:17:0,
from /Users/anirul/git/opencog/opencog/comboreduct/table/../interpreter/../combo/vertex.h:29,
from /Users/anirul/git/opencog/opencog/comboreduct/table/../interpreter/eval.h:36,
from /Users/anirul/git/opencog/opencog/comboreduct/table/table.h:42,
from /Users/anirul/git/opencog/opencog/learning/feature-selection/algo/../main/../scorers/mutual_info.h:28,
from /Users/anirul/git/opencog/opencog/learning/feature-selection/algo/../main/feature-selection.h:30,
from /Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:33,
from /Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.cc:27:
/opt/local/include/boost/variant/variant.hpp: In instantiation of 'boost::variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19>::variant(T&&, typename boost::enable_ifboost::is_rvalue_reference<T&& >::type_) [with T = const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base_, const opencog::combo::perception_base_, std::basic_string, const opencog::combo::indefinite_object_base_, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>; T0_ = double; T1 = opencog::combo::enum_t; T2 = opencog::combo::id::builtin; T3 = opencog::combo::id::wild_card; T4 = opencog::combo::argument; T5 = opencog::combo::id::action; T6 = const opencog::combo::builtin_action_base_; T7 = const opencog::combo::perception_base_; T8 = std::basic_string; T9 = const opencog::combo::indefinite_object_base_; T10 = opencog::combo::message; T11 = const opencog::combo::procedure_call_base_; T12 = const opencog::combo::action_symbol_base_; T13 = opencog::combo::ann_type; T14 = boost::detail::variant::void_; T15 = boost::detail::variant::void_; T16 = boost::detail::variant::void_; T17 = boost::detail::variant::void_; T18 = boost::detail::variant::void_; T19 = boost::detail::variant::void_; typename boost::enable_ifboost::is_rvalue_reference<T&& >::type = void]':
/opt/local/include/gcc47/c++/bits/stl_pair.h:120:17: required from 'std::Rb_tree_node<Val>::Rb_tree_node(Args&& ...) [with Args = {std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base, std::basic_string<char, std::char_traits, std::allocator >, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>, unsigned int>}; Val = std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>, unsigned int>]'
/opt/local/include/gcc47/c++/ext/new_allocator.h:110:4: required from 'void gnu_cxx::new_allocator<Tp>::construct(Up, Args&& ...) [with Up = std::Rb_tree_node<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int> >; Args = {std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base, std::basic_string<char, std::char_traits, std::allocator >, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base_, opencog::combo::ann_type, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_, boost::detail::variant::void_>, unsigned int>}; Tp = std::Rb_tree_node<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>, unsigned int> >]'
/opt/local/include/gcc47/c++/bits/stl_tree.h:405:8: required from 'std::Rb_tree_node<Val> std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::M_create_node(Args&& ...) [with Args = {std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string<char, std::char_traits, std::allocator >, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base*, opencog::combo::ann_type, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void, boost::detail::variant::void>, unsigned int>}; Key = boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>; Val = std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base_, std::basic_string, const opencog::combo::indefinite_object_base_, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>, unsigned int>; KeyOfValue = std::Select1st<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>, unsigned int> >; Compare = std::less<boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base_, std::basic_string, const opencog::combo::indefinite_object_base_, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type> >; Alloc = std::allocator<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>, unsigned int> >; std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::Link_type = std::Rb_tree_node<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int> >]'
/opt/local/include/gcc47/c++/bits/stl_tree.h:979:66: required from 'std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::M_insert(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Const_Base_ptr, std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Const_Base_ptr, _Arg&&) [with _Arg = std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base
, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int>; Key = boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base_, std::basic_string, const opencog::combo::indefinite_object_base_, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>; Val = std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>, unsigned int>; KeyOfValue = std::Select1st<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base, std::basic_string, const opencog::combo::indefinite_object_base_, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>, unsigned int> >; Compare = std::less<boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type> >; Alloc = std::allocator<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base_, std::basic_string, const opencog::combo::indefinite_object_base_, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>, unsigned int> >; std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::iterator = std::Rb_tree_iterator<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int> >; std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::Const_Base_ptr = const std::Rb_tree_node_base]'
/opt/local/include/gcc47/c++/bits/stl_tree.h:1346:70: required from 'std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::iterator std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::M_insert_unique(std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::const_iterator, Arg&&) [with Arg = std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int>; Key = boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>; Val = std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int>; KeyOfValue = std::Select1st<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int> >; Compare = std::less<boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type> >; Alloc = std::allocator<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int> >; std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::iterator = std::Rb_tree_iterator<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base*, const opencog::combo::perception_base*, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int> >; std::Rb_tree<Key, Val, KeyOfValue, Compare, Alloc>::const_iterator = std::Rb_tree_const_iterator<std::pair<const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base, const opencog::combo::perception_base, std::basic_string, const opencog::combo::indefinite_object_base, opencog::combo::message, const opencog::combo::procedure_call_base, const opencog::combo::action_symbol_base, opencog::combo::ann_type>, unsigned int> >]'
/opt/local/include/gcc47/c++/bits/stl_map.h:585:30: [ skipping 2 instantiation contexts ]
/Users/anirul/git/opencog/opencog/comboreduct/table/table.h:920:17: required from 'double opencog::combo::mutualInformation(const opencog::combo::CTable&, const FeatureSet&) [with FeatureSet = std::set]'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/../main/../scorers/mutual_info.h:53:51: required from 'double opencog::MutualInformation::operator()(const FeatureSet&) const [with FeatureSet = std::set]'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:118:56: required from 'opencog::simple_selection(const FeatureSet&, const Scorer&, size_t, bool, double, double) [with Scorer = opencog::MutualInformationstd::set; FeatureSet = std::set; size_t = long unsigned int]::<lambda(const std::set&)>'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:121:32: required from 'struct opencog::simple_selection(const FeatureSet&, const Scorer&, size_t, bool, double, double) [with Scorer = opencog::MutualInformationstd::set; FeatureSet = std::set; size_t = long unsigned int]::<lambda(const class std::set&)>'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:116:5: required from 'FeatureSet opencog::simple_selection(const FeatureSet&, const Scorer&, size_t, bool, double, double) [with Scorer = opencog::MutualInformationstd::set; FeatureSet = std::set; size_t = long unsigned int]'
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.cc:55:66: required from here
/opt/local/include/boost/variant/variant.hpp:1677:10: note: candidate 1: void boost::variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19>::convert_construct(const boost::variant<U0, U1, U2, U3, U4, U5, U6, U7, U8, U9, U10, U11, U12, U13, U14, U15, U16, U17, U18, U19>&, long int) [with U0 = double; U1 = opencog::combo::enum_t; U2 = opencog::combo::id::builtin; U3 = opencog::combo::id::wild_card; U4 = opencog::combo::argument; U5 = opencog::combo::id::action; U6 = const opencog::combo::builtin_action_base; U7 = const opencog::combo::perception_base; U8 = std::basic_string; U9 = const opencog::combo::indefinite_object_base; U10 = opencog::combo::message; U11 = const opencog::combo::procedure_call_base; U12 = const opencog::combo::action_symbol_base*; U13 = opencog::combo::ann_type; U14 = boost::detail::variant::void; U15 = boost::detail::variant::void; U16 = boost::detail::variant::void; U17 = boost::detail::variant::void; U18 = boost::detail::variant::void; U19 = boost::detail::variant::void; T0 = double; T1 = opencog::combo::enum_t; T2 = opencog::combo::id::builtin; T3 = opencog::combo::id::wild_card; T4 = opencog::combo::argument; T5 = opencog::combo::id::action; T6 = const opencog::combo::builtin_action_base; T7 = const opencog::combo::perception_base; T8 = std::basic_string; T9 = const opencog::combo::indefinite_object_base; T10 = opencog::combo::message; T11 = const opencog::combo::procedure_call_base; T12 = const opencog::combo::action_symbol_base; T13 = opencog::combo::ann_type; T14 = boost::detail::variant::void; T15 = boost::detail::variant::void; T16 = boost::detail::variant::void; T17 = boost::detail::variant::void_; T18 = boost::detail::variant::void_; T19 = boost::detail::variant::void_]
/opt/local/include/boost/variant/variant.hpp:1563:71: note: candidate 2: typename boost::enable_ifboost::is_rvalue_reference<T&& >::type boost::variant<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19>::convert_construct(T&&, int, mpl_::false_) [with T = const boost::variant<double, opencog::combo::enum_t, opencog::combo::id::builtin, opencog::combo::id::wild_card, opencog::combo::argument, opencog::combo::id::action, const opencog::combo::builtin_action_base_, const opencog::combo::perception_base_, std::basic_string, const opencog::combo::indefinite_object_base_, opencog::combo::message, const opencog::combo::procedure_call_base_, const opencog::combo::action_symbol_base_, opencog::combo::ann_type>; T0_ = double; T1 = opencog::combo::enum_t; T2 = opencog::combo::id::builtin; T3 = opencog::combo::id::wild_card; T4 = opencog::combo::argument; T5 = opencog::combo::id::action; T6 = const opencog::combo::builtin_action_base_; T7 = const opencog::combo::perception_base_; T8 = std::basic_string; T9 = const opencog::combo::indefinite_object_base_; T10 = opencog::combo::message; T11 = const opencog::combo::procedure_call_base_; T12 = const opencog::combo::action_symbol_base_; T13 = opencog::combo::ann_type; T14 = boost::detail::variant::void_; T15 = boost::detail::variant::void_; T16 = boost::detail::variant::void_; T17 = boost::detail::variant::void_; T18 = boost::detail::variant::void_; T19 = boost::detail::variant::void_; typename boost::enable_ifboost::is_rvalue_reference<T&& >::type = void; mpl_::false_ = mpl_::bool_]
In file included from /Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.cc:27:0:
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h: In member function 'bool opencog::ScoredFeatureSetGreater::operator()(const ScoredFeatureSet&, const ScoredFeatureSet&) const [with FeatureSet = std::set; opencog::ScoredFeatureSetGreater::ScoredFeatureSet = std::pair<double, std::set >]':
/Users/anirul/git/opencog/opencog/learning/feature-selection/algo/simple.h:68:5: warning: control reaches end of non-void function [-Wreturn-type]
make[3]: *_* [opencog/learning/feature-selection/CMakeFiles/feature_selection.dir/algo/simple.cc.o] Error 1
make[2]: *** [opencog/learning/feature-selection/CMakeFiles/feature_selection.dir/all] Error 2
make[1]: *** [opencog/learning/moses/CMakeFiles/moses.dir/rule] Error 2
make: *** [moses] Error 2
bash-3.2$

Forward inference variable nodes and links should be cleaned up

While testing the forward chainer in the new PLN, I noticed that at each step, the AtomSpace is accumulating many new VariableNodes and links between them.

Can't these be cleaned up after they are bound? Alternately, I noticed that Ari Heljakka suggested previously on the mailing list that these be stored in a "virtual atom repository".

For example, AtomSpace contents before forward inference:

node[ConceptNode:animal]
node[ConceptNode:bird]
node[ConceptNode:swan]
[InheritanceLink <swan,bird> 0.5 0.00062461] 
[InheritanceLink <bird,animal> 0.5 0.00062461] 

AtomSpace contents after one forward inference step:

node[ConceptNode:animal]
node[ConceptNode:bird]
node[ConceptNode:swan]
node[VariableNode:$pln_var_1000004]
node[VariableNode:$pln_var_1000005]
node[VariableNode:$pln_var_1000006]
node[VariableNode:$pln_var_1000001]
node[VariableNode:$pln_var_1000002]
node[VariableNode:$pln_var_1000003]
[InheritanceLink <$pln_var_1000002,$pln_var_1000003> 0.0 0.0] 
[InheritanceLink <$pln_var_1000004,$pln_var_1000005> 0.0 0.0] 
[InheritanceLink <swan,bird> 0.5 0.00062461] 
[InheritanceLink <$pln_var_1000005,$pln_var_1000006> 0.0 0.0]
[InheritanceLink <bird,animal> 0.5 0.00062461] 
[InheritanceLink <$pln_var_1000004,$pln_var_1000006> 0.0 0.0] 
[InheritanceLink <bird,$pln_var_1000006> 0.0 0.0] 
[InheritanceLink <swan,animal> 0.14899 0.000347102] 
[InheritanceLink <$pln_var_1000001,$pln_var_1000003> 0.0 0.0] 
[InheritanceLink <$pln_var_1000001,$pln_var_1000002> 0.0 0.0] 

OpenCog's build failing on Lubuntu 12.04

OpenCog build is failing on Lubuntu 12.04 with error:

Scanning dependencies of target PetaverseMOSES
[ 85%] Building CXX object opencog/embodiment/Learning/PetaverseMOSES/CMakeFiles/PetaverseMOSES.dir/moses-learning.cc.o
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc: In member function ‘virtual void opencog::moses::moses_learning::operator()()’:
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:166:27: error: ‘struct opencog::moses::deme_expander’ has no member named ‘create_deme’
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:184:31: error: ‘struct opencog::moses::deme_expander’ has no member named ‘optimize_deme’
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:205:18: error: ‘struct opencog::moses::metapopulation’ has no member named ‘merge_deme’
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:205:43: error: ‘struct opencog::moses::deme_expander’ has no member named ‘_deme’
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:206:43: error: ‘struct opencog::moses::deme_expander’ has no member named ‘_rep’
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:227:9: error: ‘bscored_combo_tree_ptr_set_cit’ was not declared in this scope
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:227:40: error: expected ‘;’ before ‘exemplar’
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:228:12: error: ‘exemplar’ was not declared in this scope
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc: In member function ‘virtual const combo_tree& opencog::moses::moses_learning::current_program()’:
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:268:9: error: ‘bscored_combo_tree_ptr_set_cit’ was not declared in this scope
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:268:40: error: expected ‘;’ before ‘mci’
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/7-march-2/opencog/embodiment/Learning/PetaverseMOSES/moses-learning.cc:269:9: error: ‘mci’ was not declared in this scope
make[2]: *** [opencog/embodiment/Learning/PetaverseMOSES/CMakeFiles/PetaverseMOSES.dir/moses-learning.cc.o] Error 1
make[1]: *** [opencog/embodiment/Learning/PetaverseMOSES/CMakeFiles/PetaverseMOSES.dir/all] Error 2
make: *** [all] Error 2

Complete 'make' output: http://pastebin.com/eg9XjdBm
System details:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.2 LTS
Release:    12.04
Codename:   precise

$ uname -a
Linux dobby 3.2.0-36-generic #57-Ubuntu SMP Tue Jan 8 21:44:52 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

If you need more details, feel free to leave a comment below.

cython error - breaks build

[ 58%] Building CXX object opencog/cython/CMakeFiles/cogserver_cython.dir/opencog/cogserver.cpp.o
...
/home/dhart/opencog/build-wheezy/opencog/cython/opencog/cogserver.cpp:1494:95: error: unable to find string literal operator 'operator"" PY_FORMAT_SIZE_T'

cython version 0.15.1, same as reference build

Web interface GetListRequest handle and type query parameters not working

There are query parameters that are defined for the GetListRequest method of the web interface that are not working properly.

GetListRequest filter by handle set query parameter is not working:
This fails: http://localhost:17034/opencog/list?handle=1
This succeeds: http://localhost:17034/opencog/atom?handle=1

GetListRequest filter by type is not working if type is a query parameter; it only works if type is a path segment:
This fails: http://localhost:17034/opencog/list?type=ConceptNode
This succeeds: http://localhost:17034/opencog/list/ConceptNode

opencog/atomspace/VersionHandle.cc fails to compile

First attempt at compiling since the switch to github. Looks like an ugly namespace clash.

Commit 856fa83, gcc 4.6.3, boost 1.51.0, gentoo:

In file included from /usr/include/boost-1_51/boost/functional/hash/hash.hpp:495:0,
from /usr/include/boost-1_51/boost/functional/hash.hpp:6,
from /usr/src/aiprobabilistic/opencog/opencog/atomspace/VersionHandle.h:28,
from /usr/src/aiprobabilistic/opencog/opencog/atomspace/VersionHandle.cc:25:
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp: In member function 'std::size_t boost::hash::operator()(const T&) const [with T = opencog::IndicatorType, std::size_t = unsigned int]':
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:220:9: instantiated from 'void boost::hash_combine(std::size_t&, const T&) [with T = opencog::IndicatorType, std::size_t = unsigned int]'
/usr/src/aiprobabilistic/opencog/opencog/atomspace/VersionHandle.cc:86:41: instantiated from here
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:257:34: error: no matching function for call to 'hash_value(const opencog::IndicatorType&)'
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:257:34: note: candidates are:
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:165:57: note: template typename boost::hash_detail::basic_numbers::type boost::hash_value(T)
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:171:56: note: template typename boost::hash_detail::long_numbers::type boost::hash_value(T)
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:177:57: note: template typename boost::hash_detail::ulong_numbers::type boost::hash_value(T)
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:184:36: note: template std::size_t boost::hash_value(T* const&)
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:277:24: note: template<class T, unsigned int N> std::size_t boost::hash_value(const T (&)[N])
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:283:24: note: template<class T, unsigned int N> std::size_t boost::hash_value(T (&)[N])
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:290:24: note: template<class Ch, class A> std::size_t boost::hash_value(const std::basic_string<Ch, std::char_traits<_CharT>, A>&)
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:297:57: note: template typename boost::hash_detail::float_numbers::type boost::hash_value(T)
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:303:24: note: std::size_t boost::hash_value(std::type_index)
/usr/include/boost-1_51/boost/functional/hash/hash.hpp:303:24: note: no known conversion for argument 1 from 'const opencog::IndicatorType' to 'std::type_index'
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:58:17: note: template<class A, class B> std::size_t boost::hash_value(const std::pair<_T1, _T2>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:67:17: note: template<class T, class A> std::size_t boost::hash_value(const std::vector<_Tp, _Alloc>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:73:17: note: template<class T, class A> std::size_t boost::hash_value(const std::list<_Tp, _Alloc>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:79:17: note: template<class T, class A> std::size_t boost::hash_value(const std::deque<_Tp, _Alloc>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:85:17: note: template<class K, class C, class A> std::size_t boost::hash_value(const std::set<_Key, _Compare, _Alloc>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:91:17: note: template<class K, class C, class A> std::size_t boost::hash_value(const std::multiset<_Key, _Compare, _Alloc>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:97:17: note: template<class K, class T, class C, class A> std::size_t boost::hash_value(const std::map<_Key, _Tp, _Compare, _Alloc>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:103:17: note: template<class K, class T, class C, class A> std::size_t boost::hash_value(const std::multimap<_Key, _Tp, _Compare, _Alloc>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:109:17: note: template std::size_t boost::hash_value(const std::complex<_Tp>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:119:17: note: template<class T, unsigned int N> std::size_t boost::hash_value(const std::array<_Tp, _Nm>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:154:24: note: template<class ... T> std::size_t boost::hash_value(const std::tuple<_Elements ...>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:184:24: note: template std::size_t boost::hash_value(const std::shared_ptr<_Tp>&)
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:189:24: note: template<class T, class Deleter> std::size_t boost::hash_value(const std::unique_ptr<_Tp, _Dp>&)
/usr/src/aiprobabilistic/opencog/opencog/atomspace/VersionHandle.cc:83:13: note: std::size_t opencog::hash_value(const opencog::VersionHandle&)
/usr/src/aiprobabilistic/opencog/opencog/atomspace/VersionHandle.cc:83:13: note: no known conversion for argument 1 from 'const opencog::IndicatorType' to 'const opencog::VersionHandle&'
/usr/src/aiprobabilistic/opencog/opencog/atomspace/Handle.h:117:20: note: std::size_t opencog::hash_value(const opencog::Handle&)
/usr/src/aiprobabilistic/opencog/opencog/atomspace/Handle.h:117:20: note: no known conversion for argument 1 from 'const opencog::IndicatorType' to 'const opencog::Handle&'
In file included from /usr/include/boost-1_51/boost/functional/hash.hpp:6:0,
from /usr/src/aiprobabilistic/opencog/opencog/atomspace/VersionHandle.h:28,
from /usr/src/aiprobabilistic/opencog/opencog/atomspace/VersionHandle.cc:25:
/usr/include/boost-1_51/boost/functional/hash/extensions.hpp:258:9: warning: control reaches end of non-void function [-Wreturn-type]
make[2]: *** [opencog/atomspace/CMakeFiles/atomspace.dir/VersionHandle.cc.o] Error 1

Forward chainer handling of failed search for template match

In the new PLN, in some cases, the chainer is failing AssertionError during application of the DeductionRule at this assert using the template containing two InheritanceLinks and three associated VariableNodes, where the second search for a template match fails.

Instead of failing hard, shouldn't it just give up for one inference step and allow itself to log the failed inference step?

For example, given an initial AtomSpace:

bird
swan
animal
Inh swan bird 
Inh bird animal 

It fails here:

*** Running ForwardChainer:
Matched template [InheritanceLink <$pln_var_1000004,$pln_var_1000005> 0.0 0.0] with atom [InheritanceLink <bird,animal> 0.5 0.00062461]
unable to match: [InheritanceLink <animal,$pln_var_1000006> 0.0 0.0]
opencog/python/pln/chainers.py
line 221, in _find_inputs_recursive
    assert(atom != None)
AssertionError

Whereas it succeeds, given this initial choice:

*** Running ForwardChainer:
Matched template [InheritanceLink <$pln_var_1000004,$pln_var_1000005> 0.0 0.0] with atom [InheritanceLink <swan,bird> 0.5 0.00062461]
Matched template [InheritanceLink <bird,$pln_var_1000006> 0.0 0.0] with atom [InheritanceLink <bird,animal> 0.5 0.00062461]
Matched template node[ConceptNode:swan] with atom node[ConceptNode:swan]
Matched template node[ConceptNode:bird] with atom node[ConceptNode:bird]
Matched template node[ConceptNode:animal] with atom node[ConceptNode:animal]

REST API doesn't respond properly to ?type=X

Expected:
Start a freshly built cogserver instance, with NLP and atomspaceextensions modules
GET http://localhost:17034/rest/0.2/list?type=ConceptNode
should return

{ "complete":false,
"skipped":0,
"total":9,
"result": [ ...snip... ]
}

...where 'result' is an array of all atoms with type ConceptNode.

Actual:
It returns

{ "complete":false,
"skipped":0,
"total":56,
"result": [ ...snip... ]
}

...where the results are all atoms in the Atomspace.
Note that /list/ConceptNode behaves as expected.

Issue related to building with boost 1.53.0

It has come to light that 'shared___cast' names have been REMOVED from boost 1.53 in favor of '__pointer_cast.' Therefore, sources (such as nmxmlparser) containing the former casts will fail to compile when using boost 1.53. Appropriate correction required...

REST API doesn't always report errors in JSON format

Expected:
with a freshly built cogserver, error messages to a JSON request should always be in JSON format.
Actual:
it is possible to receive untagged, pure-text responses to JSON requests with casual use, and a brief code survey turns up multiple execution paths that need patching to behave correctly.

Removing compiler warnings

Compiler warnings are useful but sometimes need to be ignored; as part of my initiation in mysteries of opencog source I plan to remove some of these, so that real problems may be spotted.

Warnings classes:

  • uninitialized variables
  • unused results
  • unused (sometimes set) variable
  • strict-aliasing in cython
  • sign-compare
  • enum values not used in switch
  • parentheses suggested
  • order of initialization in constructor
  • no return statement in function returning non-void
  • deprecated auto_ptr

RewardMessageUTest.cpp: build fails

Debian Linux

$ make tests
...
[ 98%] Generating RewardMessageUTest.cpp
Scanning dependencies of target RewardMessageUTest
[ 98%] Building CXX object tests/embodiment/Learning/LearningServerMessages/CMakeFiles/RewardMessageUTest.dir/RewardMessageUTest.cpp.o
Linking CXX executable RewardMessageUTest
../../../../opencog/embodiment/AtomSpaceExtensions/libAtomSpaceExtensions.so: undefined reference to `opencog::PatternMatch::bindlink(opencog::Handle)'
../../../../opencog/embodiment/AtomSpaceExtensions/libAtomSpaceExtensions.so: undefined reference to `opencog::PatternMatch::PatternMatch()'
../../../../opencog/embodiment/AtomSpaceExtensions/libAtomSpaceExtensions.so: undefined reference to `opencog::PatternMatchEngine::set_atomspace(opencog::AtomSpace*)'
collect2: error: ld returned 1 exit status
make[3]: *** [tests/embodiment/Learning/LearningServerMessages/RewardMessageUTest] Error 1
make[2]: *** [tests/embodiment/Learning/LearningServerMessages/CMakeFiles/RewardMessageUTest.dir/all] Error 2
make[1]: *** [CMakeFiles/tests.dir/rule] Error 2
make: *** [tests] Error 2

MathUTest fails with gcc-4.7

MathUTest pass/fail seems to depend on some very subtle float-point rounding issues; a minor change in rounding causes the test to blow up. I debugged a little and here's what I found:

rectangles are added and removed from SuperEntity, and then the overall geometry is recomputed in SuperEntity::rebuild() This uses the function rectangle.isInside() repeatedly to test if geometries intersect.

The problem seems to be that the geometries neither intersect, nor don't intersect: they just touch. So the tiniest shift in geometry, a change in the last bit of a floating-pint number, will cause the Rectangle::isInside() to go from true to false. This changes how SuperEntity::rebuild() responds, and thus, causes MathUTest to bomb out.

Figuring out how to fix this will require understanding what SuperEntity is and what it does ...

OpenCog's build failing on Lubuntu 12.04

OpenCog's build is failing with following error:

/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/28-feb-2/opencog/learning/moses/moses/scoring.cc: In member function ‘virtual opencog::moses::behavioral_score opencog::moses::discriminating_bscore::best_possible_bscore() const’:
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/28-feb-2/opencog/learning/moses/moses/scoring.cc:432:45: error: narrowing conversion of ‘best_vary’ from ‘opencog::moses::contin_t {aka double}’ to ‘float’ inside { } [-fpermissive]
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/28-feb-2/opencog/learning/moses/moses/scoring.cc:432:45: error: narrowing conversion of ‘best_vary’ from ‘opencog::moses::contin_t {aka double}’ to ‘float’ inside { } [-fpermissive]
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/28-feb-2/opencog/learning/moses/moses/scoring.cc:432:45: error: narrowing conversion of ‘best_fixation_penalty’ from ‘opencog::moses::contin_t {aka double}’ to ‘float’ inside { } [-fpermissive]
/home/amberj/Desktop/cosg_2012/projects/PAC_BUILDS/28-feb-2/opencog/learning/moses/moses/scoring.cc:432:45: error: narrowing conversion of ‘best_fixation_penalty’ from ‘opencog::moses::contin_t {aka double}’ to ‘float’ inside { } [-fpermissive]
[ 72%] Building CXX object opencog/embodiment/Control/MessagingSystem/CMakeFiles/MessagingSystem.dir/MessagingSystemExceptions.cc.o
[ 73%] Building CXX object opencog/embodiment/Control/MessagingSystem/CMakeFiles/MessagingSystem.dir/ServerSocket.cc.o
make[2]: *** [opencog/learning/moses/CMakeFiles/moses.dir/moses/scoring.cc.o] Error 1
make[1]: *** [opencog/learning/moses/CMakeFiles/moses.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 73%] Building CXX object opencog/embodiment/Control/MessagingSystem/CMakeFiles/MessagingSystem.dir/Router.cc.o
[ 73%] Building CXX object opencog/embodiment/Control/MessagingSystem/CMakeFiles/MessagingSystem.dir/RouterServerSocket.cc.o
[ 73%] Building CXX object opencog/embodiment/Control/MessagingSystem/CMakeFiles/MessagingSystem.dir/Spawner.cc.o
[ 73%] Building CXX object opencog/embodiment/Control/MessagingSystem/CMakeFiles/MessagingSystem.dir/MessageCogServer.cc.o
Linking CXX shared library libMessagingSystem.so
[ 73%] Built target MessagingSystem
make: *** [all] Error 2

Complete build ('make') log: http://pastebin.com/VgrjX1Xx

It seems that these changes were caused by recent edits to opencog/learning/moses/moses/scoring.cc

System details:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.2 LTS
Release:    12.04
Codename:   precise

$ uname -a
Linux dobby 3.2.0-36-generic #57-Ubuntu SMP Tue Jan 8 21:44:52 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.