in reply to Re^5: did you mean python
in thread did you mean python

In the original version of the program:
/* python.c - 27/01/2026 by bliako (bliako at cpan org) for https://perlmonks.org/?node_id=11167241 Run it either with a Perl CLI and a Perl script, like you would normally do with perl script.pl, perl -e ... etc. or with a python CLI and a python script. If the script does not parse as valid Perl code, it will pass the CLI and the script to a python interpreter. CAVEAT: it will fallback to python if your script is Perl but has syntax errors. compile it with: gcc python.c -o python `perl -MExtUtils::Embed -e ccopts -e ldopt +s` */ #include <EXTERN.h> /* from the Perl distribution */ #include <perl.h> /* from the Perl distribution */ static PerlInterpreter *my_perl; /*** The Perl interpreter ***/ /* You gotta love Perl */ int main(int argc, char **argv, char **env) { PERL_SYS_INIT3(&argc,&argv,&env); my_perl = perl_alloc(); perl_construct(my_perl); PL_exit_flags |= PERL_EXIT_DESTRUCT_END; int ret = perl_parse(my_perl, NULL, argc, argv, (char **)NULL); if( ret ){ perl_destruct(my_perl); perl_free(my_perl); // add here language detection logic, // various options available open source fprintf(stderr, "I guess it is &*^#$* pyton /sic/ ...\n"); execvpe("/usr/bin/python", argv, env); } printf("It parses as Perl so I am running it ...\n"); perl_run(my_perl); perl_destruct(my_perl); perl_free(my_perl); PERL_SYS_TERM(); exit(EXIT_SUCCESS); }