We intend to keep both the Python and C++ versions. The Python version will probably always use some swigged C++ code such as the sparse matrix in the spatial pooler but the C++ version will be pure, portable C++. And we will also swig the C++ implementation for different languages and run it against the same Python test site to ensure they stay in sync functionally.
That is the plan now at least. It may change so don't hold me to it. And do let me know if you have a strong opinion for or against it. On Jul 15, 2013 9:43 PM, "Erik Blas" <[email protected]> wrote: > I always get a kick out of that tool's name. > > I am sad to see the python support go, as it made for quick prototyping of > projects, and understand why it would also make the platform more portable > as a whole. > > Perhaps I'll get to the point of keeping a python port. > > > On Mon, Jul 15, 2013 at 4:05 PM, Scott Purdy <[email protected]> wrote: > >> We are moving towards a full C++ implementation. There was a thread >> where Gil described his efforts around the spatial pooler. There are some >> other things that would need to be ported to C++ like part of the temporal >> pooler, the encoders, and a CLA wrapper around the different pieces. Would >> be great if you were interested in contributing to that David, let me know >> and we can discuss. >> >> With respect to understanding what is going on, it is possible to get the >> state out despite the hybrid Python/C++ implementation. We have a tool >> that we haven't made public yet called Cerebro. It provides step-by-step >> inspection of the CLA including the active and predicted cells. It also >> allows you to write a function for generating data to step through so that >> you can quickly see how the CLA learns and predicts for different >> artificial data sets. >> >> Cerebro is still tangled with our internal code but we understand it is >> an important tool for understanding the CLA so we would like to get it into >> the public repo as soon as possible. But no ETA or specific plans yet. >> >> >> On Mon, Jul 15, 2013 at 3:20 PM, David Ragazzi <[email protected] >> > wrote: >> >>> It could there's some plan to discard Python dependence. Because of >>> Python, several hacks/dependent tools are need for finally CLA run. >>> >>> I even am converting the entire Python code to C# and later to (native) >>> C++ in order to have a compiled stand-alone library which is cross platform >>> and so I could use it in my personal projects. It´s a plenty of work, but >>> for me is better. >>> >>> With CLA ported as stand-alone library anyone could develop independent >>> tools for different operating systems without need of virtualbox or others. >>> >>> I would love to know if Grook plans to remove the dependency on python >>> soon. I remember that someone here said something about, but I don't >>> remember exactly. If so, I would like much can help. >>> >>> Best, David >>> >>> >>> On 15 July 2013 18:26, Uwe Kirschenmann <uwe.kirschenmann@fit.** >>> fraunhofer.de <[email protected]>> wrote: >>> >>>> Hello, >>>> >>>> i am pretty new to the nupic mailing list but do have a few questions >>>> concerning the implementation of NuPIC and the documentation. It tooks some >>>> time to get the whole setup running on my virtual box and i let out a cry >>>> of joy when the tests endend sucessfully. i then set up eclipse and loaded >>>> the relevant python (OPF) files of the build and the experiment into my >>>> project folder. i debugged that to get an understanding and wrote down >>>> sequence diagrams (hotgym-experiment). from there i learned that some calls >>>> are made into the c++ libs via swig. Then i asked myself how to debug this >>>> code from within the calling python code - which i did not manage. what i >>>> can do, is call the c++ code from the sample tests you mentioned in the >>>> installation instructions. all in all that was pretty frustrating. >>>> >>>> my questions are: >>>> * do you have project-files that one can use (like in eclipse) for >>>> setting the structure up correctly? >>>> * is it possible to debug the c++ code from python that makes calls to >>>> swig-implementations? >>>> * what else is needed to get a better understanding of the whole setup >>>> (my guess is, that the participants of the hackathon do have some >>>> advantage), for example other directories in the numenta folder... >>>> >>>> Best regards, >>>> >>>> Uwe >>>> >>>> ______________________________**_________________ >>>> nupic mailing list >>>> [email protected] >>>> http://lists.numenta.org/**mailman/listinfo/nupic_lists.**numenta.org<http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org> >>> >>> >>> _______________________________________________ >>> nupic mailing list >>> [email protected] >>> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >>> >>> >> >> _______________________________________________ >> nupic mailing list >> [email protected] >> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >> >> > > _______________________________________________ > nupic mailing list > [email protected] > http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org > >
_______________________________________________ nupic mailing list [email protected] http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org
