Implicitly Typed C
I don't know any good reason to do this, but if you would rather be writing Python or JavaScript here's something you can do with a C compiler:
$ cat tmp.c
foo(x) {
return x+5;
}
bar() {
return 4;
}
main() {
printf("%d\n", foo(bar()));
}
$ gcc -w -o tmp.out tmp.c && ./tmp.out
9
This code takes advantage of a historical quirk of C where types are assumed to be int
unless otherwise specified: foo(x) {...}
is equivalent to int foo(int x) {...}
. Additionally the printf
works because gcc includes stdio.h
by default, and main
is special-cased to assume a final return 0
.
I've occasionally used this style when writing example code to remove visual noise, but it's probably not a good idea there either.