Scrivo un mucchio di macro per i miei usi e consumi, e spesso evito i \begin e \end negli ambienti che creo io, perché accelero un pochino l’esecuzione; la ratio sta nele fatto che \begin e \end creano delle sequenze di controllo che permetto a LaTex di eseguire la diagnostica; inoltre creano dei gruppi con \begingroup e \endgroup. Probabilmente sono questi gruppi che danno fastidio al codice e talvolta è pericoloso toglierli. Inoltre il comando \newenvironment{pippo}{apertura}{chiusura} in realtà crea due comandi \pippo ed \endpippo che vengono attivati dai comandi \begin ed \end quando gli ambienti vengono usati in modo normale.
Quindi il mio modo di procedere, in questo caso, è stato quello del bricoleur, non propriamente ortodosso. Non invito nessuno a seguire questo modo di procedere a meno che non sappia esattamente che cosa ci sta dietro.