With the active project, is it possible for PyNARS to become a new generation of OpenNARS? If so, how will the code be migrated and improved? #23
Replies: 3 comments 2 replies
-
Hi, I think English is better here for communication, since it's the common language for researchers from all over the world. For the third question: Actualy, in PyNARS, NAL 7-9 has been supported since v0.0.2 (released one year ago). The missing part is NAL6, which is related to variable. The master branch is not updated for a long time, but we worked on The difficulty of NAL 7-9 is not about engineering but theory. In this sense, of course there is no implementation which implements NAL7-9 completely, including OpenNARS 3.0.4, but the unstable version of PyNARS has supported the same inference rules of NAL1-9 involved in OpenNARS 3.0.4. The code of OpenNARS 3.0.4 is too messy to be maintained. So it's not a good idea to just translate the java code into python. In PyNARS maintainability is a major factor to concern on. You can also see that the structure of the PyNARS project is quite different from OpenNARS 3.0.4. |
Beta Was this translation helpful? Give feedback.
-
For the other two questions: This project starts from my masters' dissertation. One consideration of using Python is that nowadays AI researchers are used to Python, and it's friendly to programmers in the developing stage. Also it's kind of a glue language, some stable parts which might not be modifed anymore (e.g. the Narsese part) can be implemented in C/C++ or other languages to enhance the runtime efficiency. We just want to take the python version as a standard reference which is faithful to NARS theory, so that other developers can refer to this project to implement NARS using other languages. |
Beta Was this translation helpful? Give feedback.
-
Hopefully, PyNARS would become OpenNARS 4.0.0. It depends on the progress in the near future. |
Beta Was this translation helpful? Give feedback.
-
In the last half month, I've seen PyNARS become active on issues and commit, and contributors from other repos about NARS also have started contributing to the code.
Seeing this pace of development and discussion, I think that PyNARS is expected to achieve the NAL 7-9 that I have been looking forward to, and even hopefully become the latest generation of OpenNARS.
Before the project moves in the desired direction, please allow me to ask a few questions:
If I can understand some of the reasons, I think it can help me in many directions to learn and contribute code in the future :)
The Chinese version:
随着项目的活跃,PyNARS有可能成为新一代OpenNARS吗?如果是,代码将如何迁移与完善?
近半个月来,我看到PyNARS在issues和commit上开始活跃,来自其它地方的贡献者也开始给代码做贡献。
看到这样的开发与讨论速度,我感觉PyNARS有望实现先前我一直期待的NAL 7~9,甚至有希望能成为最新一代的OpenNARS。
在项目朝着理想的方向发展之前,请允许我问几个问题:
如果能理解其中的一些缘由,我想这能对我后续学习与贡献代码提供很多方向上的帮助:)
Beta Was this translation helpful? Give feedback.
All reactions