Oh, that' easy, you unpack the Python sources and start with:
./configure
But what is that? It's not written in Python. It can't be, because you don't have Python yet. It's a shell script.It's not a hand-maintained shell script; it's written by expanding Autoconf macros (in the M4 preprocessing language) to shell code: essentially a compiler from another language to shell.
A cleaner language which does the same thing could, in principle, replace Autoconf.
A related use for such a language would be install scripts: perform complex actions to install some software, with minimal dependencies on what is already installed.
The GHC folks are rewriting their jungle of recursive Makefiles in Shake, a Haskell-based build system.
I think you only need the ability to build a cross compiler for this to work.
I dunno if @zwieback was saying Batsh should target python, or if people should use python instead of Batsh, or something else, but neither of those first two suggestions makes a lot of sense to me.
Python's decent cross platform support doesn't really make it better for shell scripts, and while I use it for some shell scripts, I don't ever default to python. My comment was reacting to the "wouldn't you just", as though python is a natural default choice. In my experience, it's not a good default choice.
It's harder to debug python shell scripts, because you typically can't run individual lines, you typically can't cut and paste parts of it, you can't ever run system commands directly without wrapping it in a python module call, output might not display automatically, and you often have to install something that isn't already on the machine.
from subprocess import check_output as sh
files = sh(['ls'])
print files
This has its limits but covers a lot of basic use-cases for the backtick. I think some people first see an alternate way of doing this in Python that's a lot more hairy, even if more flexible, but it doesn't have to be that way...IT departments would laugh at you if you said you wanted to install python on their server...
IT can laugh, I laugh back when java/flash/excel/browsers are already installed.
grep = findstr
cat = type
which = where
sort = sort
more = more
sudo = runas
I didn't know about where, being Windows "native". Thank you.