Decorator for Enforcing Argument Types

George Sakkis george.sakkis at gmail.com
Fri Dec 22 01:00:05 EST 2006


John Machin wrote:
> Bruno Desthuilliers wrote:
>
> > <my humble opinion>
> > Python is dynamic, and fighting against the language is IMHO a really
> > bad idea. The only places where theres a real need for this kind of
> > stuff are when dealing with the "outside world" (IOW : inputs and
> > outputs). And then packages like formencode can do much more than mere
> > type-checking
> > </my humble opinion>
>
> Agreed. The worst case I have seen:
>
> An elaborate decorator (similar to the OP's) laboriously checks arg
> types. That's IMHO not "consenting adults" territory. But it gets a
> whole lot worse when it's applied to a method whose body is like this:
>
> if isinstance(....
>     action_for_type1(...
> # big snip
> elif isinstance(...
>     action_typeN( ...
> # no else statement

Ouch.. someone must have skipped his/her OO class...




More information about the Python-list mailing list