bash, 66 characters
====

66 characters, no new lines

    Hello(){ H=$FUNCNAME;};World! (){ echo $H $FUNCNAME;};Hello;World!



Previous version (81 characters), left here because I like the `$IFS` trick :-)
---
81 characters, no new lines

    Hello(){ H=$FUNCNAME;};World! (){ echo $H${IFS:0:$[0**0]}$FUNCNAME;};Hello;World!

81 as well but with (including) new lines and easier to read

    Hello(){ H=$FUNCNAME;}
    World! (){ echo $H${IFS:0:$[0**0]}$FUNCNAME;}
    Hello;World!

Commented version

    Hello(){ H=$FUNCNAME;}                        # set $H to function name ("Hello")
    World! (){ echo $H${IFS:0:$[0**0]}$FUNCNAME;} # print $H, first char of $IFS (" ") & "World!"
    Hello;World!                                  # run the stuff

(strictly speaking the calculation `0**0` should be indeterminate but it evaluates to `1` :-D)