> WoW64 thunks are implemented for essentially all Unix libraries, enabling a 32-bit PE module to call a 64-bit Unix library. Once the remaining direct PE/Unix calls have been removed, this will make it fully possible to run 32-bit Windows applications without any 32-bit Unix library.

Woo! No more giant pile of i386 dependencies!

I am probably misreading this, but: what is the use case in which a Windows program must call a Unix library?

Every windows program has to (eventually) call a Linux library, since Wine emulates Windows on top of Linux.

Take for example "decoding an MP3 frame". A 32bit program calls a Windows API to decode an MP3 frame, that gets intercepted by Wine and forwarded to libmpg123. Since it's a 32bit program, you need (or needed, until now) the 32bit mpg123 library to handle the request.

So it's not a matter of a Windows program actually calling a Linux library, but rather Wine forwarding the function call

Forwarding 32bit calls to 64bit functions sounds simple, but it is incredibly complex. It might be simple for a function that only takes an int as argument, but on Windows, functions often take pointers to Windows structures, and those structures are often different between 32 and 64 bit. You have to translate them on-the-fly....

Wine emulates Windows APIs.

You would need something like qemu to do arm->x86-64 to do CPU emulation and then use WINE to run Windows programs on a Raspberry Pi.

https://github.com/ptitSeb/box64 can do it a little lighter than a full qemu VM