Per esempio, molti dev-kit forniscono funzionalità molto avanzate “nascondendo” i dettagli, come ad esempio il funzionamento dei tile. Nella realtà, però, tutti i computer (che la libreria MIDRES supporta) dispongono dei tile: solo che sono implementati in modo (a volte profondamente) diverso da caso a caso.
Detto in altri termini, poiché i programmi che adottano altri dev-kit girano anche dove il concetto di “tile” non c'è, questo implica che il programmatore non può scrivere direttamente logiche che trattino i tile per quello che sono, quindi con un codice C “vicino” alla macchina.
Questo non implica che, di per sé, il risultato sarà inefficiente. Almeno, non è detto che lo sia in senso assoluto. Sicuramente non potrà essere efficiente su tutti i target come lo è quello che si ottiene adottando la libreria MIDRES.
Questo perché il programmatore che adotta la libreria MIDRES può godere di alcuni vantaggi sull'hardware, legati esclusivamente al fatto che è isomorfa.
Nella libreria MIDRES le tile sono una risorsa sotto il controllo completo del programmatore e non della libreria: la libreria non ha bisogno di mapparle nello stesso modo, e il gioco può quindi disporre di tutte le tile possibili per quell'hardware (256, 128, 64, a seconda), anche in copie molteplici.
E' così perché, se ci provasse, sarebbe una astrazione e si ricade sempre al ricondurre l'implementazione specifica a un computer astratto, in questo caso dotato sempre della stessa mappatura tiles, e non sarebbe isomorfa.
La libreria offre inoltre delle funzioni per definire e manipolare le tile e garantisce che, al momento in cui saranno compilate, diventeranno “automagicamente” delle letture / scritture dirette in video ram e negli spazi opportuni di sistema.
Questo in virtù del fatto che è isomorfa ed è per questo anche il client entra in gioco con una libreria isomorfa e che, una volta che si sarà realizzato un software sufficientemente valido ed efficiente, lo sarà dovunque lo si ricompilerà.
Vai alla pagina ALTRE CARATTERISTICHE DELLA LIBRERIA MIDRES