Okay, I've re-read this thread and I think I should clarify my thoughts.
An ARX is an ActiveX DLL (nothing new here; everyone knows that). ActiveX is basically COM (to be a bit more specific; "you need COM to do ActiveX" ...maybe that's a better way of saying it). We can't make ARX's in *nix (Linux or Unix) and I doubt OS X (Mac) either because we don't have COM.
So we need a way for AutoLisp to talk to something written in C++. This is what I've been looking for; a way for me to pass information to and from with plain C++. If we can get a "communications channel" open we can *MAYBE* fix one of the other Lisp implementations you have found to use `it' (but if you have the ability to share information, I don't see the need to implement anything further; just make some functions/classes/etc available to lisp--think: "public" and "retval" in VB).
FWIW, Porting this mythical `communications channel' to Windows, Mac, and Linux is not just a small problem either.
Also, the methods and functions you have available to you are all--well, most of them--in the VL.ARX. This, as we know now, is just a fancy COM server (AutoCAD is the client). The COM subject is a rabbit hole to say the least. For example: I'm sure you have seen discussions on if you should release your objects or not "(vlax-release-object)". No one besides Autodesk knows this for sure because AutoCAD is the "COM client" and it needs to do the actual Releasing. I guess another way to think about that would be: what you are doing in AutoLisp is just saying that you don't need the communications channel open any longer. Whether or not AutoCAD is closing the COM channel is not available to you, nor should it. COM is extremely fickle. If you don't create and release properly, you can do some major damage.
I don't for sure, because I don't really care about Mac versions so I don't pay attention, but I would imagine that Autodesk is saying something like: "only vanilla AutoLisp is working in Mac versions"...well, we know that is all they could ever say at this point because they would have to use a different IPC mechanism for all those VL functions.
So we have a few choices, we either invent a new method for sharing information, use an existing one, or make a standard library. ...I vote standard library. This way everyone can contribute.
I need to do some more reading.