To All:
First, the good news.
The enthusiasm for this project is overwhelming. I'm just now catching up on the latest discussions, observations, implementations and questions from the forum. The level of expertise shown in the forums leads me to believe that the VB2PB conversion project will be a success.
Now the bad(?) news.
I have yet to read any sort of document that outlines the functionality and capabilities of the first version of the converter, what it will do and what it won't do, however I have not completely read everything in this forum so if this type of document has been posted please accept my apologies for my rant. If this document has not been prepared then I would submit it is time to do so now before we all get bogged down in the minute details of the project and we lose focus on what we are trying to do. While all of the questions and observations are certainly valid, it makes me wonder exactly what functionality will be included in the first version of the converter.
If the converter will handle only half of the comments and suggestions made in the forum then that is 50% of my recoding efforts I do not need to do. So I do think we have enough functionality discussed to apply to the version 1 of our converter.
Some of my own suggestions and questions.
Is it absolutely necessary to parse and convert everything on the fly in one pass? IMHO, so what if it takes 1.3 seconds (as Data said, "...an eternity for an android") to convert a VB project to PB in multiple passes. I will take that 1.3 seconds over the weeks of coding I have to do now to convert my VB project to PB.
So instead of attempting to do everything in one pass why not multiple passes? Each pass concentrating on the conversion issues it does best. For example, simple reformatting of VB statements like "Debug.Print" could easily be converted over to its PB equivalent "#DEBUG PRINT". So lets do those types of conversions first before tackling the tough stuff.
Keep it simple, break down the source code line.
For example, Mr. Harris mentions:
Yes, this is kinda scary, but do we have to parse this statement in one line, or could we write a preprocessor to simplify the above line to:
sTmpStrVar01 = strAnotherFn(strPar1, strPar2)
& strFunction(sTmpStrVar01, iNumber) & ...
Source code functionality and intent is still the same, but the above two lines of code resulting from the simplification process would be easier to parse and convert IMHO.
In my past dealings with automated methods of writing source code it is preferable to simplify the original source code statement to its absolute simplest form until you cannot break it down any further, if at all possible, thereby making it easier to locate, identify, and output a corresponding source code line in another language.
Keep to the convention of allowing only one functional statement per line, being an old FORTRAN IV and FORTRAN 77 guy I have no problem coding this way as both of the FORTRAN compilers (the ones I used anyway) forced this coding standard on the user.
Just some thoughts.
First, the good news.
The enthusiasm for this project is overwhelming. I'm just now catching up on the latest discussions, observations, implementations and questions from the forum. The level of expertise shown in the forums leads me to believe that the VB2PB conversion project will be a success.
Now the bad(?) news.
I have yet to read any sort of document that outlines the functionality and capabilities of the first version of the converter, what it will do and what it won't do, however I have not completely read everything in this forum so if this type of document has been posted please accept my apologies for my rant. If this document has not been prepared then I would submit it is time to do so now before we all get bogged down in the minute details of the project and we lose focus on what we are trying to do. While all of the questions and observations are certainly valid, it makes me wonder exactly what functionality will be included in the first version of the converter.
If the converter will handle only half of the comments and suggestions made in the forum then that is 50% of my recoding efforts I do not need to do. So I do think we have enough functionality discussed to apply to the version 1 of our converter.
Some of my own suggestions and questions.
Is it absolutely necessary to parse and convert everything on the fly in one pass? IMHO, so what if it takes 1.3 seconds (as Data said, "...an eternity for an android") to convert a VB project to PB in multiple passes. I will take that 1.3 seconds over the weeks of coding I have to do now to convert my VB project to PB.
So instead of attempting to do everything in one pass why not multiple passes? Each pass concentrating on the conversion issues it does best. For example, simple reformatting of VB statements like "Debug.Print" could easily be converted over to its PB equivalent "#DEBUG PRINT". So lets do those types of conversions first before tackling the tough stuff.
Keep it simple, break down the source code line.
For example, Mr. Harris mentions:
but here is what has me scared...
& strFunction(strAnotherFn(strPar1, strPar2), iNumber) & ......
& strFunction(strAnotherFn(strPar1, strPar2), iNumber) & ......
sTmpStrVar01 = strAnotherFn(strPar1, strPar2)
& strFunction(sTmpStrVar01, iNumber) & ...
Source code functionality and intent is still the same, but the above two lines of code resulting from the simplification process would be easier to parse and convert IMHO.
In my past dealings with automated methods of writing source code it is preferable to simplify the original source code statement to its absolute simplest form until you cannot break it down any further, if at all possible, thereby making it easier to locate, identify, and output a corresponding source code line in another language.
Keep to the convention of allowing only one functional statement per line, being an old FORTRAN IV and FORTRAN 77 guy I have no problem coding this way as both of the FORTRAN compilers (the ones I used anyway) forced this coding standard on the user.
Just some thoughts.
Comment