Live data from Hacker News

Eul – The language

eul.im

31–33 of 33 posts

Re: Eul – The language

#31

Earlier quoted context omitted.

> On the other hand, Rust definitely does not have "Fast compilation", True, though several people are now working on compiler performance. > and although debatable, I would say that "Simplicity" is not one of Rusts many virtues. I've found that Rust seems as simple as it can be given the problem it's solving. For instance, lifetimes and borrow checking aren't trivial , but I have a hard time thinking of a simpler ab…

I think it's one of these things where C is 'simple' but using it often isn't. Taken to the most absurd extreme, Brainfuck is even simpler. So I'm not sure that simplicity is necessarily a virtue in a programming language. That said, I don't think Rust is that complicated - it's just that a lot of the concepts it uses are unfamiliar to a lot of people and 'best practices' are not always set in stone because of that,…

I'll repeat what a lot of other people have said on this one. I think Rust puts the vast majority of its complexity up front, so that you have to deal with it even in toy programs. However, once your toy program is working, it can expand into a real program without uncovering bugs or running into a lot of new complexity. C on the other hand, can make toy programs appear simple. However, there can be a lot of undefined behavior in those programs, which will turn into serious bugs as the programs get more interesting. I like this article for talking about some of those cases: https://blog.regehr.org/archives/1520

Re: Eul – The language

#32
post #30

Earlier quoted context omitted.

You can make syscalls with inline assembly (SVC 0x80).

Not on macOS. macOS does not guarantee syscall compatibility between OS versions. The only supported mechanism for invoking syscalls is via libc.

You can do it, it’s how libsystem does it. A lot of AppStore apps use it for jailbreak testing too, e.g. testing sandbox integrity, or to call ptrace with PT_DENY_ATTACH. Apple lets these apps pass review and onto the AppStore.

Do you know how often, if ever, Apple ever changes the syscall table other than to add to it?

Re: Eul – The language

#33
post #30

Earlier quoted context omitted.

Not on macOS. macOS does not guarantee syscall compatibility between OS versions. The only supported mechanism for invoking syscalls is via libc.

You can do it, it’s how libsystem does it. A lot of AppStore apps use it for jailbreak testing too, e.g. testing sandbox integrity, or to call ptrace with PT_DENY_ATTACH. Apple lets these apps pass review and onto the AppStore. Do you know how often, if ever, Apple ever changes the syscall table other than to add to it?

libSystem is provided by Apple. The fact that libSystem does it does not mean you can do it without libSystem, as libSystem is the one and only supported way to do this.

> Do you know how often, if ever, Apple ever changes the syscall table other than to add to it?

I don't know, but I'm pretty sure the answer is something other than "never".

Post reply on HN