Eh eh, há já uns bons anos que não uso (ou vejo) uma EPROM.

Eu usava-as com o 8051 há prai uns 10 anos.
Mas o objectivo da pergunta era mesmo para perceber porque tinhas usado o pinMode e/ou digitalWrite/Read sabendo microcontroladores e quão ineficientes essas funções são.
Eu uso essas funções quando (ultimamente não tenho feito nada disso) preciso de escrever algo rápido para testar e mais tarde se precisar então, uso a manipulação de portas com macros para obter o mínimo código possível.
No entanto, devo admitir que para principiantes em electrónica essas funções são excelentes porque evitam muitos problemas para quem pouco sabe de C. Para quem sabe C e microcontroladores, pode evitar usar essas funções e poupar imensa memória e ciclos. Daí eu ter dito anteriormente ao Marcelo que criar bibliotecas para acender ou apagar LEDs não é propriamente algo ideal porque apenas está a criar mais uma camada de código em cima de funções que por si só não são optimizadas. Já se o fizesse de forma optimizada para poupar memória seria excelente.
Neste momento estou a trabalhar numa biblioteca que vai aceder a um servidor para fazer download dos próximos autocarros a parar numa determinada paragem e a maior parte dos problemas que tenho são precisamente por querer poupar a memória flash e ROM ao máximo para que quem quiser usá-la não ter problemas com memória a menos no programa. Isto é algo que a maior parte das bibliotecas não liga puto pelo que tenho visto nas que fiz download.