If you’re like me, you rely on Satimage to extend AppleScript, but with the upcoming macOS 27 eliminating Intel-based apps, that will no longer be an option.
With that in mind, I created a Satimage clone that replicates most of its functionality in a background ARM app. Your scripts should only have to change their use line from use "SatimageOSAX" to use "MTC_OSAX".
But more than that, this project also adds features and fixes stuff that wasn’t working in Satimage. You can get all the details from the README of this open-source project.
sortlist is much faster on long lists: 2.5 to 7 times for lists, and about 15 times for an array of real. exclude items and keep items also compare numbers as text faster.
comparison 1 ignores case by full Unicode case folding, as SatimageOSAX did: “ß” equals “ss”, “ς” equals “σ”, and “ff” equals “ff”.
sortlist compares text the same however its accents are typed (“é” as one character or as “e” and a combining accent).
comparison 4 puts uppercase first by the letters’ case, not their character codes (“Ÿ” before “ÿ”).
sortlist of dates is twice as fast, and of numbers mixed with text a fifth faster.
sortlist … with respect to takes any number of criteria quickly (one that repeats an earlier one changes nothing, and is skipped), and reads ascending only as far as it’s used.
The rest of the Arrays suite (but its hidden commands and the obsolete extractitem), with SatimageOSAX’s bugs fixed.
The 3D array handling suite, with isosurface and streamline working as its dictionary describes.
sortlist … with respect to returns the lists it sorts by as each would come back sorted alone, as SatimageOSAX did: numbers in a list with text as text, integers in a list with reals as reals.