Is there a build of Self for MacOS Catalina (which is now 64bit only)?
Steve
On Tue, Apr 21, 2020 at 7:06 AM Steve Dekorte steve@dekorte.com wrote:
Is there a build of Self for MacOS Catalina (which is now 64bit only)?
Unfortunately Self is still 32bit only. I think Russell uses Mac OS so might have a work around involving virtual machines.
I did some work a while back trying to get Self running on x86_64 by reviving the bytecode interpreter rather than using the JIT - which would require writing an x86_64 JIT. I wasn't able to get the interpreter running though - I don't think it ever worked or it has bitrot since the releases that it did work. I think if I were to revisit it, using LLVM, or some other existing code generation framework, might be a better idea just to get something running.
I wonder if it would be possible to do a quick-and-dirty 64 bit port that still used 32 bit object pointers, relative to some base. This would limit the maximum size of the heap, but that likely does not matter, and it would be much easier than trying to change the in-memory layout of everything all at once.
On Mon, Apr 20, 2020 at 5:58 PM Chris Double chris.double@double.co.nz wrote:
On Tue, Apr 21, 2020 at 7:06 AM Steve Dekorte steve@dekorte.com wrote:
Is there a build of Self for MacOS Catalina (which is now 64bit only)?
Unfortunately Self is still 32bit only. I think Russell uses Mac OS so might have a work around involving virtual machines.
I did some work a while back trying to get Self running on x86_64 by reviving the bytecode interpreter rather than using the JIT - which would require writing an x86_64 JIT. I wasn't able to get the interpreter running though - I don't think it ever worked or it has bitrot since the releases that it did work. I think if I were to revisit it, using LLVM, or some other existing code generation framework, might be a better idea just to get something running.
-- https://bluishcoder.co.nz _______________________________________________ Self-interest mailing list Self-interest@lists.selflanguage.org http://lists.selflanguage.org/mailman/listinfo/self-interest
On Tue, Apr 21, 2020 at 10:12 AM Slava Pestov sviatoslavpestov@gmail.com wrote:
I wonder if it would be possible to do a quick-and-dirty 64 bit port that still used 32 bit object pointers, relative to some base. This would limit the maximum size of the heap, but that likely does not matter, and it would be much easier than trying to change the in-memory layout of everything all at once.
That's what I was thinking of - my plan was to use the bytecode interpreter on 32-bit to make sure it worked, then do a quick-and-dirty port to get it running, then look at options for the 64-bit code generation, in an attempt to have something running at each step to make sure it works. But I never got past "get the interpreter working" stage. In hindsight I should have just gone straight to the next step.
Maybe when I retire...
On Apr 20, 2020, at 3:17 PM, Chris Double chris.double@double.co.nz wrote:
On Tue, Apr 21, 2020 at 10:12 AM Slava Pestov sviatoslavpestov@gmail.com wrote:
I wonder if it would be possible to do a quick-and-dirty 64 bit port that still used 32 bit object pointers, relative to some base. This would limit the maximum size of the heap, but that likely does not matter, and it would be much easier than trying to change the in-memory layout of everything all at once.
That's what I was thinking of - my plan was to use the bytecode interpreter on 32-bit to make sure it worked, then do a quick-and-dirty port to get it running, then look at options for the 64-bit code generation, in an attempt to have something running at each step to make sure it works. But I never got past "get the interpreter working" stage. In hindsight I should have just gone straight to the next step.
-- https://bluishcoder.co.nz _______________________________________________ Self-interest mailing list Self-interest@lists.selflanguage.org http://lists.selflanguage.org/mailman/listinfo/self-interest
On 21 Apr 2020, at 7:57 am, Chris Double chris.double@double.co.nz wrote:
On Tue, Apr 21, 2020 at 7:06 AM Steve Dekorte steve@dekorte.com wrote:
Is there a build of Self for MacOS Catalina (which is now 64bit only)?
Unfortunately Self is still 32bit only. I think Russell uses Mac OS so might have a work around involving virtual machines.
It’s difficult. It isn’t just a matter of, say, Ubuntu where all you need to do is load or package the 32 bit system libraries. I did play with putting together a Linux VM with a Mac user land tool taking advantage of the Mac’s Hypervisor.framework (See eg https://github.com/machyve/xhyve https://github.com/machyve/xhyve) But then you would need to have a bridge over localhost or something to talk to the Mac side to get a GUI etc.
In the end I’ve been playing instead with the online OurSelf stuff because it gets me Mac, but also Windows and iOS and a collaborative framework not just an image on a local system.
Also I’m getting used to being able to just walk away from my Self world on my desktop and open it up at the same point on my laptop or iPad!
Russell
I did some work a while back trying to get Self running on x86_64 by reviving the bytecode interpreter rather than using the JIT - which would require writing an x86_64 JIT. I wasn't able to get the interpreter running though - I don't think it ever worked or it has bitrot since the releases that it did work. I think if I were to revisit it, using LLVM, or some other existing code generation framework, might be a better idea just to get something running.
-- https://bluishcoder.co.nz _______________________________________________ Self-interest mailing list Self-interest@lists.selflanguage.org http://lists.selflanguage.org/mailman/listinfo/self-interest
self-interest@lists.selflanguage.org