Hello,
Raspberry pi gpio can handle 0.05 sec speed. But i think it is not much good idea to read a complex data from gpio. Buttons or simple leds ok. But reading high speed raw data, i prefer to add an arduino between pi and shift register. Because arduino can read fast the shift registers. Arduino and raspberry can communicate faster via comport.
I dont know perl. It can build in python. C / c++ is not necessary for speed ( for this project )
I would like to see your wiring schematic to understand what you are doing now and what can we do.
Kind regards,
Kadir.