Live data from Hacker News

OCaml: Add support to iOS/Mac ARM64

github.com

41–50 of 103 posts

Re: OCaml: Add support to iOS/Mac ARM64

#41
post #36
post #33

Earlier quoted context omitted.

>But well most developers aren't actually using Linux. What??

I'm guessing he might have meant OCaml devs? Most development shops I've worked in used Linux servers to host their solution, and mostly Linux/Unix based tools and dev environments (people who preferred Windows as their desktop usually ssh'd to Linux boxes to work).

Most developers, there is a lot of places to get this information but if you look at the stackoverflow survey, which is a survey large enough to be relevant, you get some data around 25% of developers using Linux.

We're talking about as their computer, not servers tho, everyone uses Linux for server

Re: OCaml: Add support to iOS/Mac ARM64

#42
post #23

Does anybody know what’s the status with bitcode support? Last info from about 1.5 years ago was that the Golang and Rust toolchain did not support it, but also Apple did not make it mandatory. What is the current state? Does ocaml support bitcode?

There is no support to bitcode, but there is no major advantage to support it, so it doesn't seems to be worthy

Re: OCaml: Add support to iOS/Mac ARM64

#43

Earlier quoted context omitted.

ARM 32 bit is supported by OCaml. Just not for iOS/MacOS since the 32 bit iOS devices are ancient by now.

> 32 bit iOS devices are ancient by now The last iPhone with a 32-bit processor appears to be the iPhone 5c, last produced in 2015. As I type this on a laptop from 2015, I have to question your definition of "ancient".

Ancient, unsupported, and shrinking as older devices are broken or unused and no new device is built. There aren’t many reasons to target 32-bit iPhones, unless it’s a hobby.

Re: OCaml: Add support to iOS/Mac ARM64

#44
post #2

I think most programming languages and associated tools will start supporting ARM64 as a first class citizen. The current lack of support isn't due to apathy, just constraints around ARM64 not being popular for desktop development. For example, it's difficult to support a platform that isn't well supported by your CI/CD provider. Linus Torvalds previously said that ARM on the server would never be a thing since devel…

I have this vague idea, which can be completely false, that porting software that runs on ARM64 Linux (which is what cloud servers use) to Mac ARM64 (which I think is BSD derived?) is not trivial. Or is it?

Depends on the kind of software. POSIX compatible C requires few, if any, source changes. Code that makes direct syscalls will need more work.

Re: OCaml: Add support to iOS/Mac ARM64

#45

Earlier quoted context omitted.

> 32 bit iOS devices are ancient by now The last iPhone with a 32-bit processor appears to be the iPhone 5c, last produced in 2015. As I type this on a laptop from 2015, I have to question your definition of "ancient".

Ancient, unsupported, and shrinking as older devices are broken or unused and no new device is built. There aren’t many reasons to target 32-bit iPhones, unless it’s a hobby.

32-bit iPhones run iOS 10, so if you have a deployment target set that far back you should support them.

Re: OCaml: Add support to iOS/Mac ARM64

#46
post #36

Earlier quoted context omitted.

I'm guessing he might have meant OCaml devs? Most development shops I've worked in used Linux servers to host their solution, and mostly Linux/Unix based tools and dev environments (people who preferred Windows as their desktop usually ssh'd to Linux boxes to work).

Most developers, there is a lot of places to get this information but if you look at the stackoverflow survey, which is a survey large enough to be relevant, you get some data around 25% of developers using Linux. We're talking about as their computer, not servers tho, everyone uses Linux for server

Thanks for the answer! I have a followup question: if the server is Linux, that means the app itself (or the "solution") is Linux based, which means that an OCaml solution would have to compile (or cross-compile to) and run on Linux, which means that ARM64 on Linux is relevant :)

Unless of course most OCaml devs don't target Linux.

Re: OCaml: Add support to iOS/Mac ARM64

#47

Earlier quoted context omitted.

I have this vague idea, which can be completely false, that porting software that runs on ARM64 Linux (which is what cloud servers use) to Mac ARM64 (which I think is BSD derived?) is not trivial. Or is it?

Depends on the kind of software. POSIX compatible C requires few, if any, source changes. Code that makes direct syscalls will need more work.

It's worth pointing out that MacPorts still has a lot of modern tools and utilities working for PowerPC Macs. This is despite PowerPC Macs being 'officially' stuck on GCC 4.2 (unless you install newer... through MacPorts), ancient Mac OS X frameworks and barely any developers have a PowerPC machine at hand (because why would they).

Re: OCaml: Add support to iOS/Mac ARM64

#48
post #23

Does anybody know what’s the status with bitcode support? Last info from about 1.5 years ago was that the Golang and Rust toolchain did not support it, but also Apple did not make it mandatory. What is the current state? Does ocaml support bitcode?

There is an OCaml interpreter that does run a bitcode, is that what you're referring to?

The App Store has an option where, in addition to uploading an ARM binary, you can upload LLVM bitcode (a binary representation of LLVM IR). This allows Apple to optimize the app differently for different devices[0], and is required to build apps for watchOS and maybe tvOS.

[0]: Not sure if Apple does this in practice, but I believe the purpose of bitcode is that they could do that if they wanted to.

Re: OCaml: Add support to iOS/Mac ARM64

#49
post #21

Earlier quoted context omitted.

As someone who jumped on the ARM train early, and someone who doesn't want to contribute to creating more electronic waste than necessary, it's disheartening to see 32-bit ARM being increasingly ignored as a platform compared to ARM64.

It's not just ARM; the same has been happening to x86. 32-bit in general is going out of fashion for general-purpose platforms.

Well, even many mid-tier phones already have 4 GB RAM now.

The demise of 32-bit was/is inevitable for personal computing.

Re: OCaml: Add support to iOS/Mac ARM64

#50
post #47

Earlier quoted context omitted.

Depends on the kind of software. POSIX compatible C requires few, if any, source changes. Code that makes direct syscalls will need more work.

It's worth pointing out that MacPorts still has a lot of modern tools and utilities working for PowerPC Macs . This is despite PowerPC Macs being 'officially' stuck on GCC 4.2 (unless you install newer... through MacPorts), ancient Mac OS X frameworks and barely any developers have a PowerPC machine at hand (because why would they).

MacPorts also mostly supports Apple silicon. It's pretty cool!
Post reply on HN