Elixir checks most of those boxes. If you want a good functional scriptibg language, Elixir soynds like the go to. Some lisp language like guile should also be sufficient, and probably have a lighter footprint.
This requirement stands out though:
has a simple/straightforward setup (ideally, it should be a single executable that I can just copy to a remote system, use to run a script and then delete)
Thats basically what ansible does. If you plan on doing this to multiple machines you should just use ansible. Also how do you plan on ensuring the scripting interpreter is installed on the machines?
If python is too big for you and you’re dealing with heterogeneous systems then you’re probably stuck with
sh
as the lowest common denominator between those systems. I’m not aware of any scripting languages that are so portable you can simply install them with one file over scp.Alternate route is to abandon a scripting interpreter completely and compile a static binary in something like Go and deploy the binary.
There was also some “compile to bash” programming languages that I’ve sneered at because I couldn’t think of a use case but this might be one.