Self-running source
C
Set the executable bit on the following polyglot C/shell source file:
#if 0
gcc -Wall $0 && exec ./a.out; exit 1
#endif
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("Hello world!\n");
return 0;
}
This is my favourite version because:
- readable (e.g. no multiline comments)
- minimal boilerplate
- only runs the program if it compiled successfully
- exits with 1 if there was an error