The primary reason why Python has GIL is because it uses reference counting. Without GIL, python garbage collection goes to crap.