Hi all, i stayed back from this discussion for a while, mainly because i don't know python at all and i am not a C++ guru as well.
As far as I understood, Eric's main motivation is making coding in wesnoth a more pleasant experience. I can understand that very well. I have chased several bugs related to savegames, monitoring complex config information (*before* there existed this fantastic cout << config stuff) and chasing it through almost all the applications code. There have been bugs I chased for 6 hours, before I even knew what was the problem, leave alone fixing it. This is something very time-consuming and demotivating about wesnoth's code. As said before, I don't know about python and my C++ knowledge is solid at best. But I have programmed in various languages and I did some bigger projects (like 20000+ loc) all by myself. From that I can tell you that it is the code design that matters, not the language. I wrote applications with visual basic, maybe one of the simplest languages to learn and use ever (actually it was designed to be that way). I have experienced many times, that such a language can get you into a maintenance hell at no time, if the design is bad. If we want to make wesnoth more maintainable, IMHO we need to provide a clear design. The problem with the current code is that there are so many unnecessary dependencies. Activities into this direction have already taken place, for example: - The editor code has been separated. - The GUI code is about to be modularized. This, together with a good interface design, will contribute *way* more to reducing bugs and easing maintenance, than switching to any other language can do. I even go a step further: If python is so much easier to learn we might attract a lot of devs who are not so good at designing. In the long run that will lead to more problems than it solves. Therefore, if we want to sincerely improve wesnoth's code I suggest to: - Move existing code into a better design. For example modularize the savegame code. - Don't go for new code without a solid design. - Improve our developers abilities concerning design and/or impose the need for a design to be provided and checked *before* any code is allowed to be added. I know that those suggestions lead to major changes within the projects organization. And that it will slow down development of new stuff significantly. But to me it looks like the only way to solve the maintenance problems we have. Greetings Yogi _______________________________________________ Wesnoth-dev mailing list Wesnoth-dev@gna.org https://mail.gna.org/listinfo/wesnoth-dev