Because if you do it on a Mac and then at some other point in your code you
form PIL import Image
or for that matter do the two calls in reverse
python will crash outright with the message
AccessInit: hash collision 3 for both 1 in 1
why? becasue mac is weird and python things the two Image modules are different thus tries to Load PIL twice.
why the crash doesn't happen on Lynix or windows I don't know but that's the way it is
So please, edit pyglet\image\codecs\pil.py and get rid of the stupid try statement
only use
form PIL import Image
the people who made PIL were stupid for allowing the other form anyway as it breaks namespaces.