The deal that didn't happen
February 2026
Setting The Scene
There is - or was, at least - a particular flavour of ressentiment among us Amiga users, rooted in the platform's perceived lack of success despite its many unique and clever features. This ressentiment has given rise to many of our strange mannerisms, not least our rather uncritical acceptance of unsubstantiated anecdotes as fact.
Last year, I investigated a long-standing claim about an alleged botched deal between Sun Microsystems and Commodore, regarding licensing of the Amiga 3000. My original intention was to write about another purported deal - one between IBM and Commodore - but the UNIX rabbithole was too tempting, and I decided to fall into it.
Upon closer examination, the whole Amiga 3000 debacle seems highly unlikely. It does, however, offer everything a good Amiga anecdote needs to stay popular: The Amiga's ingenuity offering something no other platform could, the Amiga finally being recognized by the Business Boys Club, and of course the incompetence of Commodore's management. Which is why I was surprised when I first heard about a supposed deal between IBM and Commodore.
Commodore, IBM, Amiga and REXX
The Commodore/IBM story can best be summarized with this quote from an Ars Technica article (emphasis mine):
IBM had also gone on a major shopping expedition for any kind of new technologies that might help make OS/2 fancier and shinier. It had partnered with Apple to work on next-generation OS technologies and licensed NeXTStep from Steve Jobs. While technology from these two platforms didn’t directly make it into OS/2, a portion of code from the Amiga did: IBM gave Commodore a license to its REXX scripting language in exchange for some Amiga technology and GUI ideas, and included them with OS/2 2.0.
While the claim of partnering with both Apple and NeXT does warrant some investigation, I intend to focus on the alleged deal with Commodore. This story, again, features some key elements of a good Amiga anecdote, such as the platform's unique cleverness and its sudden (but silent) acceptance in the Business Boys Club. It does not - to my surprise - feature any claims of Commodore mismanagement, but seems to have been a great success and of mutual benefit.
It also seems to be an even more obvious falsehood than Sun's interest in the Amiga 3000. Actual historical sources are nowhere to be found: Wikipedia, at the time of writing this, cites the Ars Technica article, and the Ars Technica article cites nothing. There are various other online resources also retelling this anecdote, including The Hacker's Dictionary. Most of the traces lead back to a single, now dead page. It originally stated that "Commodore licensed IBM's REXX scripting language for inclusion in their AmigaOS, and IBM took many GUI design ideas from the AmigaOS for their new GUI."
This all sounds rather incredible. Let's examine!
Looks and Feels
First, let's address the elephant in the room: OS/2 and AmigaOS look nothing alike. Below is Workbench 2.04, which looks the same as Workbench 2.0, which was what IBM supposedly licensed from Commodore:
Now let's compare that to OS/2 2.0:
As far as early 1990s desktops go, these are two quite different-looking creatures, and not just when it comes to pure aesthetics. The only major likeness is the overarching concept of spatial file management, and the 3D bevels on buttons and windows, which was as common in the 1990s as flat design is now. It's a bit like saying they have the same look and feel as MacOS or Acorn's RiscOS.
It's much easier to point out differences: The window borders, the font, the colours and the icon designs are obvious. The Amiga's desktop is a Workbench so it's got drawers, unlike OS/2's more common folders. OS/2 also clearly features in-window menu bars and context menus, whereas the Amiga has a Mac/Lisa-like menu bar at the top of the screen. The 3D bevels differ, the widget styles differ, in fact, the entire look and feel of the two systems differs fundamentally.
The Amiga's GUI - provided by the GadTools widget library in AmigaOS 2.0 and up - has always tended more towards the Mac-like, in the sense that it offers a small set of widgets and very few surprises in the form of pop-up menus and right-click features. It's a tight, minimalist UI. OS/2 2.0, on the other hand, tends more towards the opposite, with a much richer toolkit. Not visible in the screenshot are for example tabbed interfaces, which GadTools didn't have. In fact, if OS/2 2.0 shares the look and feel of something, it's probably that of its main competitor, also released in April 1992.
Yes, that's Windows 3.1 - the nemesis of OS/2 if there ever was one. We can also see several similarities in the look and feel of the two GUIs. The icon style, the window borders and the 3D bevels are much more similar in these two systems compared to the Amiga. This is probably not coincidence: IBM and Microsoft had initially collaborated on OS/2, but things turned sour in September 1990, when Microsoft wanted to focus on Windows due to its increasing popularity. OS/2 was originally intended for high end machines, but as computers grew faster, Windows became its main competitor.
Windows 3.1 looks basically identical to Windows 3.0. Both OS/2 1.2 and Windows 3.0 were released in 1990 and the two systems shared a similar aesthetic already at that point. The look and feel of OS/2 2.0 seems more like a natural progression of the 1.2 look - with a bit of Windows sprinkled in for good measure - rather than something even remotely inspired by the Amiga.
The AmigaOS 2.0 look and feel, meanwhile, is extensively documented in The Amiga User Interface Style Guide. The devil, they say, is in the details - and the details described in this book are clearly quite different from those in OS/2.
Timelines
The supposed timeline for this deal is rather easy to pinpoint. It must have happened some time before April 1992, when IBM released OS/2 2.0, and during or after 1989, when Commodore started working on what would become AmigaOS 2.0 - the first version to feature a REXX interpreter.
Microsoft and IBM, as stated above, officially collaborated on OS/2 until September 1990. AmigaOS 2.0 - sporting both the new GadTools look and ARexx - was released along with the Amiga 3000 in June 1990. IBM released OS/2 1.3 in December 1990. If there was some kind of licensing deal between Commodore and IBM, it's curious that IBM waited until 1992 to include anything from the Amiga. The deal must have been struck much earlier - at least during early 1990 - so there must have been time for them to adapt the "look and feel" of OS/2 1.3 if they so desired.
What's even more curious is that the deal would likely have taken place when Microsoft and IBM still collaborated on OS/2. REXX interpreters are good and well, but Microsoft would then reasonably had been able to partake in the Amiga code base as well, without Commodore getting anything back from Microsoft. That would indeed have been a blunder worthy of any Amiga campfire tale, and surely not left out of the story.
Program Code
The Ars Technica article goes even further than most other sources, and claims that OS/2 2.0 even contains licensed program code from AmigaOS 2.0. I'm going to boldly claim that this, if nothing else, is pure and utter fabrication.
AmigaOS consists of many different components. Exec is the kernel and provides the Amiga's famously fast, low-resource multi-tasking capabilities. Intuition provides screen and window management, sort of like a Wayland compositor. TRIPOS - ported from the PDP-11 by Metacomco - provides a command line interface, but also some of the core system APIs. TRIPOS was allegedly picked due to time constraints, and this is widely considered a mistake. It was written in BCPL, and BCPL made things unnecessarily clunky for Amiga programmers - especially compared to the speed and elegance of Exec.
AmigaOS 2.0 was a major overhaul of the whole operating system. Commodore needed to retain backward compatibility, but they also wanted to throw off the shackles of BCPL as much as possible. Large chunks of the OS were rewritten in C and Assembler, the new widget library GadTools was introduced, bugs were fixed, and numerous features were introduced that increased both the capability, complexity and user-friendliness of the entire system. Some of the BCPL legacy remained, however, and many Amiga programmers are still familiar with the dos.library concepts of BPTR (a BCPL pointer) and BSTR (a BCPL pointer to a string, with a leading byte indicating the string length).
While C code is intended to be portable, and large parts of OS/2 are also likely written in C, the similarities end there. If the supposedly shared code had anything to do with the GUI, it would have been GadTools. The other parts were either too tightly integrated with the Amiga hardware, or tainted by BCPL. This too seems like a stupid deal on IBM's part: Replacing already existing OS/2 widget code with GadTools would have effectively ruined any hope of backward compatibility, crippled their widget library (GadTools have no hierarchical tree views or per-window menus, both featuring prominently already in OS/2 1.3), and/or mixed two completely different API and programming styles. In short: Poppycock!
A Brief History of REXX interpreters
REXX was originally invented by Mike Cowlishaw while working at IBM. It was intended to replace clunky mainframe scripting languages and was first presented in February 1981. At the time, it was a more coherent language than Unix shell scripts, and must have been a joy to work with compared to its cumbersome mainframe predecessors. While it might seem a bit dated today, and lacking convenient data structures such as lists, it has some interesting features and is still a useful and usable high level scripting language.
In 1987, William S. Hawes brought REXX to the Amiga and named his version ARexx. ARexx was a faithful recreation of the language, but Hawes expanded it with several convenient features, some of which were decidedly Amiga-centric. REXX has a concept of being able to address different hosts, or subsystems, which can be used for inter-process communication. Hawes called this concept ARexx Ports, and provided both a shared function library and extensive documentation for programmers on how to implement ARexx ports in their programs. Thanks to the Amiga's multi-tasking, this meant that a user could write scripts to tie together the functionality of several different ARexx-capable programs, for example delegating things like image conversion and text processing to other applications from within a Desktop Publishing program.
As part of their AmigaOS 2.0 overhaul, Commodore decided to throw out the BASIC interpreter bundled with previous versions - a rather slow affair written by Microsoft - and instead include ARexx. This turned out to be a stroke of genius, and led to a surge in ARexx-capable software. Apart from tying together applications, ARexx was also used in its own right. It was a much more competent language than the old TRIPOS shell script parser, and fun tool for hobbyist programmers.
ARexx, however, was written from scratch. Hawes ran a one-man operation, and couldn't have offered IBM anything of substantial value in exchange for distribution rights. Then again, he didn't have to: There's no IBM code in ARexx. As with any well-defined programming language, this isn't strange or unusual. GCC quite obviously doesn't contain any AT&T code, for example.
If younger readers want to feel a little bit less like Real Programmers, consider the following quote from the ARexx manual:
ARexx was developed on an Amiga 1000 computer with 512K bytes of memory and two floppy disk drives. The language prototype was developed in C using Lattice C, and the production version was written in assembly-language using the Metacomco Assembler. The documentation was created using the TxEd editor, and was set in TEX using AmigaTEX. This is a 100% Amiga product.
ARexx was clearly released long before Commodore decided to include it in AmigaOS. Commodore themselves decided to license it from its original developer not because it was an IBM mainframe language, but because it was clever and popular and already existed for the Amiga. Commodore's official ARexx documentation features no reference to an IBM license. Neither does my own pre-Commodore ARexx disk, nor the manual itself:
REXX proved to be a popular language. Released at a time when few competing scripting languages existed, it was both powerful and easy to write, with excellent features for string parsing and arbitrary-precision arithmetic. One of the first non-IBM versions was released for DOS by the Mansfield Software Group in 1985 - predating ARexx by two years. Mansfield Software Group still exists, offering the REXX-enabled and XEDIT-inspired KEDIT text editor for Windows. Other versions of REXX have since appeared on numerous platforms, for example in the form of the open source Regina REXX Interpreter.
Fool Me Once
Just like with ARexx, the Mansfield floppies carry no reference to IBM. The most damning evidence, however, is Regina REXX. It was originally released by Anders Christensen in 1992 - the very same year IBM released OS/2 2.0. The fact that Regina REXX is open source should be conclusive proof that anyone who so desired could write a REXX interpreter without requiring a license from IBM. If Commodore indeed traded GUI secrets for an already existing Amiga port that didn't require a license, it would be a cock-up of such calamitous magnitude that it supersedes even the allegedly botched Amiga 3000 deal: Commodore tricked, with schoolyard tactics, into sharing code with IBM and Microsoft. Nightmare fodder!
If Commodore had indeed been tricked like this, it would probably have been pretty solid grounds for a lawsuit. By 1992, Commodore was struggling to stay alive, and would have jumped at the opportunity to snatch a chunk of IBM cash through a bit of corporate litigation. Of course, this didn't happen: I recall no such reports in the Amiga press at the time (it would have been big news), and can't find any references now, either.
Conclusion
I claim, with great confidence, that Commodore and IBM never struck a deal regarding ARexx and the OS/2 "look and feel". The timeline seems iffy, the two systems look nothing alike, and most importantly, nobody else needed a license from IBM for distributing REXX interpreters. If anyone can prove me wrong, please contact me and I promise to eat a shoe (miniature, made out of marzipan).
As for ARexx itself, ex-Commodore engineer Randell Jesup has confirmed that Hawes was properly reimbursed for ARexx, and that Commodore even tried to hire him several times.






