To All:
It must be close to the time to officially create this beast so I would like to take some time to express some user issues, if I may.
As someone who has designed highways and wrote Civil Engineering software for other coworkers for the last 25 years I know the types of software that tends to work for me and the types of software that don't work. Personally I prefer software that doesn't do too much processing/decision making in one shot. I also prefer software that allows (forces?) me to make the ultimate decision to achieve the result, IOW where I'm in total control of the processing. I like to think I'm in control of the process rather than the software controlling me. This is a personal preference, but I think it is a valid one.
I'm assuming (and please correct me if I'm wrong) that the conversion process will be an iterative one, convert a little, compile a little, debug a little. To this point I still do not know how much VB to PB conversion will be done per pass, assuming we will have a multi-pass system. If this is the case then how we choose to set up the converter will have an obvious direct bearing on your coding efforts.
Rather than have the converter do a lot of different conversions for me at one time, I would prefer the converter just do one thing at a time, and do it very well. For example, maybe set up the converter to switch the VB key words "Debug.Print" to the PB equivalent "#DEBUG PRINT" in a pass, and maybe convert the VB "True/False" to PB's "%TRUE/%FALSE" in the next pass, and so on. The point here is the user can, and probably should, review these individual steps to make sure the conversion did what it was supposed to do. Once these separate passes have been verified by the user (and he gains confidence in these separate conversions) we should have some sort of facility to combine these separate passes into one user selection. Even if the user combines the above into one selection it is just a mechanism to automatically run multiple passes through the converter.
I think some of these more mundane conversions could be done in a multi pass preprocessor before we get into the exotic stuff like VB objects. Since I tended to stay away from using VB objects in my source code, this type of exotic conversion is not much use to me, but would be of use to someone else. About 95% of my conversions would fall into the preprocessor category. IMHO, the only way I see to make the converter work for a broad range of users and coding styles and be as flexible as it can be is to adhere to the one pass one conversion type functionality.
I am firmly convinced that the converter should be coupled with a text edit control so the user may see the conversion done to date. There needs to be some method of rolling back the changes made to a source code module in case something did not work as expected. Of course this functionality could be accomplished manually by using the PB IDE, Jose Roca's SED (my personal favorite), but having an integrated editor at our control within the converter itself would afford us the opportunity to automatically take care of viewing the source code after it has been converted and to visually keep track of the changes made so they could be rolled back at the user's discretion. I have been experimenting with this idea using the Scintilla edit control if anyone is interested.
Just my ideas and observations.
It must be close to the time to officially create this beast so I would like to take some time to express some user issues, if I may.
As someone who has designed highways and wrote Civil Engineering software for other coworkers for the last 25 years I know the types of software that tends to work for me and the types of software that don't work. Personally I prefer software that doesn't do too much processing/decision making in one shot. I also prefer software that allows (forces?) me to make the ultimate decision to achieve the result, IOW where I'm in total control of the processing. I like to think I'm in control of the process rather than the software controlling me. This is a personal preference, but I think it is a valid one.
I'm assuming (and please correct me if I'm wrong) that the conversion process will be an iterative one, convert a little, compile a little, debug a little. To this point I still do not know how much VB to PB conversion will be done per pass, assuming we will have a multi-pass system. If this is the case then how we choose to set up the converter will have an obvious direct bearing on your coding efforts.
Rather than have the converter do a lot of different conversions for me at one time, I would prefer the converter just do one thing at a time, and do it very well. For example, maybe set up the converter to switch the VB key words "Debug.Print" to the PB equivalent "#DEBUG PRINT" in a pass, and maybe convert the VB "True/False" to PB's "%TRUE/%FALSE" in the next pass, and so on. The point here is the user can, and probably should, review these individual steps to make sure the conversion did what it was supposed to do. Once these separate passes have been verified by the user (and he gains confidence in these separate conversions) we should have some sort of facility to combine these separate passes into one user selection. Even if the user combines the above into one selection it is just a mechanism to automatically run multiple passes through the converter.
I think some of these more mundane conversions could be done in a multi pass preprocessor before we get into the exotic stuff like VB objects. Since I tended to stay away from using VB objects in my source code, this type of exotic conversion is not much use to me, but would be of use to someone else. About 95% of my conversions would fall into the preprocessor category. IMHO, the only way I see to make the converter work for a broad range of users and coding styles and be as flexible as it can be is to adhere to the one pass one conversion type functionality.
I am firmly convinced that the converter should be coupled with a text edit control so the user may see the conversion done to date. There needs to be some method of rolling back the changes made to a source code module in case something did not work as expected. Of course this functionality could be accomplished manually by using the PB IDE, Jose Roca's SED (my personal favorite), but having an integrated editor at our control within the converter itself would afford us the opportunity to automatically take care of viewing the source code after it has been converted and to visually keep track of the changes made so they could be rolled back at the user's discretion. I have been experimenting with this idea using the Scintilla edit control if anyone is interested.
Just my ideas and observations.
Comment