Is there a way to get the expression object for a function?

Very cool, thanks guys. And for posterity, you can (in 0.6) apparently also get the expression from just a function type, via Base.uncompressed_ast(typeof(func).name.mt.defs.func). In my case this is nice because I can make broadcast be @generated and thus more efficient.