[Tutor] python parser

bob gailer bgailer at gmail.com
Tue Dec 23 21:47:31 CET 2008


I'm forwarding this to the list.

Please always reply-all so a copy goes to the list.

johnf wrote:
> On Monday 22 December 2008 03:03:44 pm you wrote:
>   
>> More thoughts on converting VFP to Python:
>>
>> line-by-line can take into account control structures. One just
>> increases or decreases the indent when encountering the start or end of
>> a structure.
>>
>> a bigger challenge is handling the work-area related commands such as
>> Scan, Replace, Skip, Set Relation, ....
>>     
>
> Actually Bob I'm using Dabo which has the above covered.  You should take a 
> close look at Dabo.  I am able to do most everything I've ever done in VFP.  
> I don't use IDE Dabo provides and I'm able to get everything done.  At this 
> point I can almost copy any VFP form.
>   
>> the concept of data sessions
>>     
>
> So far I'm able to read the dbc and have most of what is required for the data 
> sessions
>   
>> macro substitution
>>     
>
> That looks like a problem for the moment.
>   
>> all the GUI stuff would be translated to one of the python GUI packages.
>> Not a trivial task!
>>     
>
> So far it has not been to bad.  The real issue is converting to sizers.  But 
> the windows side complete.
>   
>> An outline:
>>
>> create initial dictionary of all initial special characters, keywords
>> including their abbreviations, ...?
>> create dictionary to hold all user-generated names (variables, classes,
>> procedures, windows, ...?)
>> awareness while scanning of #define and blocks such as text .. endtext
>> to ignore
>> scan file for procedure/function/define
>>
>> certain initial characters take precedence = ? & # * && @ \
>> this list may be extended temporarily by commands like text
>> ; is a special final character
>>
>> assignment statement?
>> initial word a keyword or function?
>> if none of the above error?
>>
>> and on and on.
>>     
>
> If I had a decent parser I think the rest would be easy.  But I don't and I do 
> not understand the all the CS stuff.  
>
>   


-- 
Bob Gailer
Chapel Hill NC 
919-636-4239



More information about the Tutor mailing list