Alphanumeric Hello World Your goal is to write "Hello, World!" (minus the quotes). This is a popularity-contest, so most up votes  wins. Code length will be used to break ties.
Anything goes, as long as it is within the following rules:


All characters must be either letters or numbers, so you may only use characters in the string "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".
All code you use must be in one file, with the exception of imported modules/classes/whatever they're called in your favourite language.
Only the standard libraries/frameworks for your language of choice are allowed (for example, Python's Math module is allowed, but Numpy, Scipy, and Pygame are not). I will allow TkInter as it is the de facto standard for GUIs in Python.
No input is permitted, be it reading from stdin, reading a file, displying an image, or reading from the web.


+10 brownie points if you figure out how to do it in Java without bending the rules.



On your marks, get set, code!

EDIT: braces ({}), brackets ([]), and parentheses (()) are allowed as this would be pretty much impossible for most languages without them. I'm also removing the character limit rule. Hopefully this will make it more interesting.

EDIT^2: white space is also allowed. My brain isn't working properly, sorry. >.&lt;
Perl

Some say perl is a language full of ascii noise and random symbols like $... That is not true :P

s zzHelloq worldmz and s zqzchr 44ze and s zmzchr 33ze and print



  Let's break this up into subexpressions:
(s zzHelloq worldmz) and (s zqzchr 44ze) and (s zmzchr 33ze) and (print)

 It should be obvious that it executes from left to right as long as every expression returns true. But what on earth is s zqzchr 44ze?
In perl, there is a group of "quote-like operators" which includes  q(str), qw(li st), /regex/, s/from/to/ among other things. It turns out all of these operators can use almost any character as a delimeter, with a couple pecularities: opening parethesis has to be closed by a matching closing parenthesis, and if you wish to use a letter as a delimiter you have to put a space after the operator letter (to disambiguate it from a bareword).
In this case we see three uses of the s/// (regex substitution) operator:
s//Helloq worldm/
s/q/chr 44/e
s/m/chr 33/e
All delimited by the character z. The /e flag on the last two causes the substitution to be interpreted as code to be evaluated, rather literal text.
A fairly well-known fact about perl is that most operations default to operating on the $_ builtin variable unless otherwise specified. All these three substitutions and the print operate on $_ in this case, so first we put the words Hello world into the variable, then we fix the punctuation by using the numeric ascii values of the characters, then we print the contents of the variable.