My first computer polyglot!

Computer polyglot is computer program that is valid in more than one programming language.

On this page you can find my first polyglot. It runs as shell script, tcl script, perl script and ANSI C program. I was inspired by this polyglot. It runs in eight languages! Isn't it wonderfull ? ;)

update: Anonymous reader sent me a notice that this polyglot is not running under all shells and i did not mention which shell you should use. So polyglot was tested with bash shell and according to him it is also running with KSH93. Thanks to him for his input ;)

source code (download):
#define a /*
#! \
sub 'echo {print @_; print "\n"}
#' 2>/dev/null
# \
echo "my polyglot"; exit;
# \
sub puts{};
puts "my polyglot";
exit;
#*/
#include <stdio.h>
#define sub main
#define asdf ()
sub asdf { printf("my polyglot\n");}
and polyglot in action:
$ cc mypolyglot.c
$ ./a.out
my polyglot
$ sh mypolyglot.c
my polyglot
$ perl mypolyglot.c
my polyglot
$ tclsh mypolyglot.c
my polyglot
As you can see it does same thing in ANSI C, shell, perl and TCL! :)

Maybe later i will explain how it works... So check this page later.

You can check some informations about computer polyglot on wikipedia.