<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://retroprogramming.iwashere.eu/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://retroprogramming.iwashere.eu/feed.php">
        <title>Retroprogramming by spotlessmind1975 midres_library:isomorphism</title>
        <description></description>
        <link>https://retroprogramming.iwashere.eu/</link>
        <image rdf:resource="https://retroprogramming.iwashere.eu/lib/tpl/dokuwiki/images/favicon.ico" />
       <dc:date>2026-05-01T19:34:25+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:abstractions?rev=1608748748&amp;do=diff"/>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:advantages?rev=1608750079&amp;do=diff"/>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:conclusions?rev=1609088024&amp;do=diff"/>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:definition?rev=1608748411&amp;do=diff"/>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:goal?rev=1608710803&amp;do=diff"/>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:mydevkit?rev=1609087073&amp;do=diff"/>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:other?rev=1609087829&amp;do=diff"/>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:otherlibs?rev=1609086384&amp;do=diff"/>
                <rdf:li rdf:resource="https://retroprogramming.iwashere.eu/midres_library:isomorphism:rules?rev=1609087303&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://retroprogramming.iwashere.eu/lib/tpl/dokuwiki/images/favicon.ico">
        <title>Retroprogramming by spotlessmind1975</title>
        <link>https://retroprogramming.iwashere.eu/</link>
        <url>https://retroprogramming.iwashere.eu/lib/tpl/dokuwiki/images/favicon.ico</url>
    </image>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:abstractions?rev=1608748748&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-23T19:39:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:abstractions</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:abstractions?rev=1608748748&amp;do=diff</link>
        <description>ABSTRACTIONS OR ... DISTRACTIONS?

Abstractions usually deal with the fact that a program written for a computer would be recompilable, simultaneously, for others. Abstraction simply takes for granted the existence of an imaginary computer, an abstract computer. The abstraction describes its operations. Then this abstract computer is</description>
    </item>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:advantages?rev=1608750079&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-23T20:01:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:advantages</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:advantages?rev=1608750079&amp;do=diff</link>
        <description>THE ADVANTAGES OF ISOMORPHISM

For example, many dev-kits provide very advanced functionality by “hiding” details, such as how tiles work. In reality, however, all computers (which MIDRES supports) have tiles: they are implemented in a (sometimes profoundly) different way, from case to case.</description>
    </item>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:conclusions?rev=1609088024&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-27T17:53:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:conclusions</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:conclusions?rev=1609088024&amp;do=diff</link>
        <description>CONCLUSIONS AND FORECASTS

How will the MIDRES library evolve?

Sooner or later, it will take care of the sound section: if the game has a soundtrack played by a harpsichord, you should hear the same track if you recompile that code on another platform (possibly with a harpsichord but if there is only a piano, it is fine!).</description>
    </item>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:definition?rev=1608748411&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-23T19:33:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:definition</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:definition?rev=1608748411&amp;do=diff</link>
        <description>DEFINE ISOMORPHISM

Well, but in detail... what is an isomorphism?

The easiest way is to indicate what it is not, that is, defining it through a series of negations:

	*  it is not synonymous with “same interface”;
	*  it does not mean (only) to use the same code;</description>
    </item>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:goal?rev=1608710803&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-23T09:06:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:goal</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:goal?rev=1608710803&amp;do=diff</link>
        <description>QUICKLY DEVELOP EFFICIENT SOFTWARE

The MIDRES library allows you to create “by design” WORA (Write Once Run Anywhere) programs. That is, it is designed to be able to develop software efficiently once and see it works, always efficiently, on various 8-bit platforms in an optimized way, without the need for</description>
    </item>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:mydevkit?rev=1609087073&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-27T17:37:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:mydevkit</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:mydevkit?rev=1609087073&amp;do=diff</link>
        <description>&quot;MY DEV-KIT IS DIFFERENT&quot;

The isomorphic approach is different from that of abstractions. It is based on mapping the underlying hardware without making use of third-party libraries and by matching complex and heterogeneous structures, albeit homologous, to each other. The code written with this approach, when it works well that is when it is satisfactory in terms of execution speed or use of resources,</description>
    </item>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:other?rev=1609087829&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-27T17:50:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:other</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:other?rev=1609087829&amp;do=diff</link>
        <description>OTHER FEATURES OF THE MIDRES LIBRARY

To illustrate the other features of the library, let's think about this statement: a code that adapts itself to different things does not imply an abstraction. ALL my games rearrange themselves as a play area depending on the monitor surface. This adaptation occurs at compile time, not at run time.</description>
    </item>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:otherlibs?rev=1609086384&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-27T17:26:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:otherlibs</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:otherlibs?rev=1609086384&amp;do=diff</link>
        <description>THE NON-ISOMORPHISM OF EXISTING LIBRARIES

If you take any library that has parts written in assembly, then it is definitely not isomorphic because it cannot run beyond the processor (or, more often, the platform) it was designed on. Even if it were all written in pure C, however, it might not be isomorphic. Imagine a library that takes the</description>
    </item>
    <item rdf:about="https://retroprogramming.iwashere.eu/midres_library:isomorphism:rules?rev=1609087303&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2020-12-27T17:41:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>midres_library:isomorphism:rules</title>
        <link>https://retroprogramming.iwashere.eu/midres_library:isomorphism:rules?rev=1609087303&amp;do=diff</link>
        <description>THE ABSTRACTION THAT IS NOT THERE

What I REALLY want to do is avoid introducing an abstraction layer (even mine!) on 8-bit machines, because they don't have the computing power and resources to handle it; at the same time, I would like to avoid writing a program for each platform, also because I would be forced to test all versions.</description>
    </item>
</rdf:RDF>
