This code implenets decorators for erlang.