I hope this is the right place for this. I have been messing with perl a bunch today a managed to take advantage of how Perl and C use different comment characters.
Here are two methods to write a program that runs as either C or Perl:
#include <stdio.h> // prints 99 Bottles of beer on the wall. Works as
+either a C or a Perl program.
#define PERL C /*
"*/
int main(){//"; {
int $bottles;
$bottles=99;
while($bottles){
printf("%d bottle%s of beer on the wall, %d bottle%s of beer.\
+n", $bottles, $bottles==1?"":"s", $bottles, $bottles==1?"":"s");
printf("Take one down and pass it around, ");
if($bottles==1){
printf("no more bottles of beer on the wall.\n\n");
}
else{
printf("%d bottle%s of beer on the wall.\n\n", $bottles-1,
+ $bottles==2?"":"s");
}
$bottles--;
}
printf("No more bottles of beer on the wall, no more bottles of be
+er.\n");
printf("Go to the store and buy some more, 99 bottles of beer of t
+he wall.");
}
and using a bit different method:
#include <stdio.h>
#define sub void
#define $x char *$t
#define chomp gets
sub main(){
$x;
printf("Please enter your name: ");
#if 0
$t = <>;
#endif
chomp($t);
printf("Hello, %s!", $t);
}
#if 0
main();
#endif