http://qs1969.pair.com?node_id=1210032

I'm about to email the pumpking for an intervention as a personal favour. Because I'm convinced that a half-arsed solution is better than no solution, it's due past time that the over 20 year old embarrassment gets fixed:
› ver
Microsoft Windows [Version 10.0.16299.125]

› chcp 65001
Aktive Codepage: 65001.

› type αω.bat
@echo hiαω

› node -p "require('child_process').execSync('αω.bat').toString()"
hiαω


› perl6 -e "run 'αω.bat'"
hiαω

› php -r "system('αω.bat');"
hiαω

› python -c "import subprocess; subprocess.call('αω.bat')"
hiαω

› ruby -e "system 'αω.bat'"
hiαω

› perl -Mutf8 -e "system 'αω.bat'"
Der Befehl "a?.bat" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.

› perl -Mutf8 -MWin32::Unicode::Process=systemW -e "systemW('αω.bat')"
Der Befehl "a?.bat" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
Plan of attack: use 5.028 enables use feature 'just-make-it-work-already-dammit', which checks $^O eq 'MSWin32' and then replaces all the broken chdir, mkdir, open, opendir, rename, rmdir, system, unlink, utime, -X stat etc. with the working equivalent code from Win32::Unicode and also somehow on -e, not just with code executed from files.

Now tell me why this is a stupid idea, but keep in mind that