ARM64 - it's time!

It’s time for ARM64 builds.

Please support 64-bit ARM builds on Linux by adding any spare Feedback points you have to <https://xojo.com/issue/42794>

It’s currently the 19th most popular Feedback case. Tell Xojo what you want next.

3 Likes

I did but it wasnt ARM 64 :stuck_out_tongue:

Thanks for your input.

Now 17th.

<https://xojo.com/issue/42794>

Now the 14th most popular case in Feedback!

ARM is likely to play an even bigger part in all of our computing futures, and Xojo is well on its way with iOS 64-bit ARM builds, 32-bit ARM Linux builds plus Raspberry Pi and other SBC ARM builds.

The gap that we have, as Xojo developers, is ARM64 builds on Linux and one useful way, for Xojo to know what we’re looking for on their roadmap, is Feedback points. It’s not a perfect system but it’s a useful indicator for Xojo. So if you’ve any spare Feedback points, please add them to <https://xojo.com/issue/42794>

Let’s wait for next week to see where Xojo is going…
You know: Priorities

Priorities and a compiler engineer

We currently have all the engineering capabilities we need to support ARM64. In fact, there is nothing we need to change about the compiler that we don’t have engineering capabilities to do. When we might support ARM64 is a separate matter of course but the ability to do so is not a constraint.

You may not have noticed but we have been making compiler changes over the last 2 years.

looking forward to changes to the compiler to handle this as well as the debugger issues in 64 bit and generics :slight_smile:

1 Like

Actually, we already support ARM64 (on iOS). Demand is the primary reason we don’t yet support it on Linux.

As for generics, IF we ever decided that was a priority, we have the in-house expertise to add it. It’s just not remotely close to the top of the priority list at the moment.

Generics are highly desirable for things like Lists, Dictionaries & so many other types

A developer could make a “List of a specific type” - and then any method that takes a “List” would be able to manipulate it. In many ways this would be a lot like an interface - but you cant specify “List of TYPE” with an interface or with a class currently and have it enforced by the compiler. At best what you can do now is a list of variants OR an array of a specific type.

The same goes for Dictionary and being able to specify a type for keys and values - something you cannot do today because they use Variants. I’ve created an implementation of a TypedDictionary BUT it has NO compiler support - which would be really nice. Instead it relies on runtime support only and while still better than nothing I would prefer compiler support.

Generics would make it possible to create something like Boost or the C++ std library for Xojo
People could quit reinventing this code over & over for themselves and just use the standard implementations of all kinds of code (exactly like they do in C++ using the std library)

I get Generics arent a priority
I’m still sketptical about your claim though
I’ve filed several compiler bugs that remain unresolved
All of these are far less work than Generics
<https://xojo.com/issue/59061>
<https://xojo.com/issue/58900>
<https://xojo.com/issue/57676>
<https://xojo.com/issue/56748>
<https://xojo.com/issue/56411>
<https://xojo.com/issue/56376>
<https://xojo.com/issue/56375>
<https://xojo.com/issue/55938>
<https://xojo.com/issue/56765>

and this one which relates to where the compiler inserts landing pads for loops (horribly annoying) <https://xojo.com/issue/57500>

this one is closed but really is odd for an OOP language that supports polymorphism <https://xojo.com/issue/57732>

I’d love to see some, any, of these fixed as they have all affected me in the project(s) I’m currently working on currently in one way or another and I’'ve had to craft some interesting work arounds for them

1 Like

[quote=479618:@Norman Palardy]I get Generics arent a priority
I’m still sketptical about your claim though[/quote]
Nearly every one of those cases has a single subscriber. That we haven’t addressed them is a question of priority rather than required skills.

Are some of them annoying? Yes, but you know better than most that we have to prioritize and these just haven’t reached the surface.

OK So I’ll send Jason a request that one (or more) be addressed as part of the Pro+ license :slight_smile:

[quote=479622:@Geoff Perlman]That we haven’t addressed them is a question of priority rather than required skills.
[/quote]
Before you or anyone gets any mistaken ideas I AM NOT saying Xojo does not have a talented team.
They always have had talented teams. And still do.

But having talented people doesn’t mean they always have the RIGHT skill sets for all the tasks required.
As far as I know, and experienced over the decade I worked there, the skills sets shifted as personnel changed.
And I believe they still have a talented team.
But perhaps not the right set of skills to implement Generics or some of the other compiler fixes my list points out might be required

You contend you do have the right skill sets
I’d LOVE to be proven wrong and have you & team prove me wrong

EDIT : And that is my last statement on this thread about this topic. Period

Er… Aren’t we going just a little off topic ?

All of the major distros are now providing 64bit versions for RPi 3 B+ and 4. If you already have the compiler ability to enable 64bit Linux ARM, then why on Earth would you not have done so?

{EDIT} - one reason just popped into mind - the support for both variants - arm64 and aarch64. If that is a hold-up point, I’d recommend arm64 since that’s the more accepted Linux variant.

[quote=479622:@Geoff Perlman]Nearly every one of those cases has a single subscriber. That we haven’t addressed them is a question of priority rather than required skills.
[/quote]
I follow all except 57732 of those reports, and none of them are mine, so there are at least 2 people interested in them. And, until just now, I’d never even noticed the “Subscribe” option. I though that we had to “Favorite” or add the report to our “Top Cases” for it to make any difference. As has been asked many times before - what parameters on the Feedback reports DO you use to prioritize feedback reports?

[quote=480121:@Tim Jones]All of the major distros are now providing 64bit versions for RPi 3 B+ and 4. If you already have the compiler ability to enable 64bit Linux ARM, then why on Earth would you not have done so?

{EDIT} - one reason just popped into mind - the support for both variants - arm64 and aarch64. If that is a hold-up point, I’d recommend arm64 since that’s the more accepted Linux variant.

@Geoff Perlman Nearly every one of those cases has a single subscriber. That we haven’t addressed them is a question of priority rather than required skills.
I follow all except 57732 of those reports, and none of them are mine, so there are at least 2 people interested in them. And, until just now, I’d never even noticed the “Subscribe” option. I though that we had to “Favorite” or add the report to our “Top Cases” for it to make any difference. As has been asked many times before - what parameters on the Feedback reports DO you use to prioritize feedback reports?[/quote]

We haven’t added it because there has not been enough demand for it. Just because we can add something doesn’t mean we should. It’s more testing that has to be done and a longer build process as well so there needs to be sufficient demand.

Subscribing to a case is simply a way to keep up on it. The number of points a case has received by users indicating it as a favorite is has far more impact. Of the 11 cases Norman mentioned, only 3 have been favorited by anyone. 57676 has 3, 56748 has 1 and 57500 has 2. So that’s not much demand.

But isn’t that a self-fulfilling statement / Catch-22? If you don’t offer it, people don’t use it and don’t even know it’s an option. But, if you offered it, you’d open up a wholly untouched market opportunity, causing more people to be aware of the option and ask for it. That’s specifically a big point now with the major Linux variants providing native 64bit variants as first class distributions.

That’s always a possibility. No one was asking us to support building web apps when we made that available and it’s one of our more popular targets. OTOH, demand is absolutely a huge factor. This particular request just seems like it’s one where existing users would likely ask for it. Demand would drive it. We already support ARM, 64 bit and Linux so we have users running 64-bit Linux apps and if they need to run them on ARM devices, I would imagine we would be getting lots of requests for it.

Having said that, I’m always open to hearing a compelling argument that there’s a big market just waiting for Xojo.

Curious, it sounds like you are open to the idea where users could contribute funds to specific features?