You must log in or # to comment.
import builtins def HelloWorld(funcname): getattr(builtins, funcname)("HelloWorld") HelloWorld("print")
Edit, improved:
import inspect, builtins def HelloWorld(funcname): caller = inspect.currentframe().f_code.co_name getattr(builtins, funcname)(caller) HelloWorld("print")
Perl time:
sub AUTOLOAD { our $AUTOLOAD=~s/.*:://; no strict; local $_=$_[0] and *STDOUT->$_($AUTOLOAD) } HelloWorld("print");
Pro: You can Give HelloWorld any (syntactically valid) name you like and (as long as the parameter is
"print"
, anyway) its name will be printed, no pre-declaration required.Con: The specified function inside the quotes has to be a method associated with a file descriptor.
Why Yoda switched his major from CS to Jedi Studies
Sometimes I wish there were Easter eggs like this in programming languages. But then, people would just be using these Easter eggs for everything
print
I’m not surprised by anything at this point
Well well well, how the turned have tables, they have