Ok, pensavo fosse qualcosa basata quantomeno su un linguaggio standard e non così "custom" e di nicchia.
Secondo me, per risolvere la problematica, il primo step da affrontare è uno solo: studiare la OOP e i suoi principi, quindi acquisire le nozioni di classi, interfacce, metodi, membri, visibilità, istanze, ecc.
Una volta che la OOP è un background chiaro dal punto di vista delle nozioni, sarà senz'altro più facile capire quali elementi corrispondono alle strutture che troviamo nel linguaggio "vecchio", e come effettuare una traduzione efficace (non necessariamente 1 a 1) della logica nel linguaggio di partenza nel contesto del nuovo linguaggio.
"Aggredire" una singola struttura cercando il corrispondente diretto nella OOP, che non è detto che esista, credo sia un modo per sfruttare poco l'OOP per quello che è, col rischio anzi di creare una architettura che sia meno gestibile rispetto alla precedente, sebbene il linguaggio di partenza fosse meno efficace.