"Varnish allocate some virtual memory, it tells the operating system to back this memory with space from a disk file."
I'm pretty sure the article's talking specifically about mapping a gigantic file into memory and pretending it's all in RAM, and isn't talking about swap at all.
It's hard to tell whether they mean that it's done explicitly or not:
"...all we need to have in Varnish is a pointer into virtual memory and a length, the kernel does the rest."
If you're manually memory mapping stuff, you'd need more than that. In any case, the first part of the article is definitely talking about swap when it comes to fighting with the kernel over whether something should be in RAM or on disk. Explicitly memory mapping a large file will work on iOS, although the lack of sparse file support on the filesystem would seem to make it painful.