Not sure if that example helps. You can make any programming language hard to read without some basic formatting. The way I would write the sexpr would be:
(impl
(impl
p
(impl q r))
(impl
(impl p q)
(impl p r)))
It's clear when each section begins and ends and doesn't require complex parsing rules.