[Tutor] Syntax Check

Jeff Shannon jeff at ccvcorp.com
Thu Jan 27 22:34:49 CET 2005


Chad Crabtree wrote:

> I'm trying to make a macro system that's work by just doing this
> 
> import macro
> # [...]

Perhaps you could turn things around, and make your macro preprocessor 
into an import hook?  I.E., you'd use it like --

     import macro
     module = macro.import("module_with_macros"[, macro_list])
     module.do_stuff()

Not sure if you'd need to have a list of macros in the module to be 
imported, or not.  Perhaps the macro module would hold a list of 
currently active macros, instead...

In any case, this (I think) gives you a chance to interrupt the import 
process and modify the target module before the Python parser gets it, 
which should enable you to avoid the SyntaxError problems.

(Of course, I've never messed around with hooking __import__(), so I 
could just be talking out of my ...)

Jeff Shannon
Technician/Programmer
Credit International




More information about the Tutor mailing list