What is isomorphism? – ugBASIC user manual
10 months ago
- #programming
- #isomorphism
- #retrocomputing
- The author discovered programming in C on 8-bit computers like the Commodore 64 and started writing games and a library of common functions.
- Facing limitations of modern languages on 8-bit systems, the author invented 'isomorphism,' a programming paradigm for creating portable yet efficient software across different computers.
- Isomorphism aims for minimal modifications and performance loss by avoiding unnecessary abstractions, matching computer functionalities in the best way possible.
- Unlike traditional approaches that abstract functionalities to behave identically everywhere, isomorphism recognizes and adapts to differences in implementation across targets.
- The author transitioned from C to BASIC for ugBASIC, citing BASIC's ubiquity on home computers and its suitability for isomorphism, lacking a distinction between syntax and libraries.
- ugBASIC now supports around twenty targets, focusing on feasible cross-target source writing through isomorphism without guaranteeing identical results across all platforms.
- The language does not introduce abstractions for unsupported features but may offer creative alternatives, like reprogramming characters on the VIC-20 to mimic images.
- ugBASIC caters to both those interested in portability and those focused on optimizing for a specific target, providing satisfaction in either scenario.
- The author invites feedback and contributions through the official forum or GitHub for improvements or bug reports.