News for hackers. Stuff that matters.
Re:Yes, I am still learning Rust by Klonoar on Thursday March 12, 2020 @06:27PM (#22562582)
I've actually got a working set of bindings to AppKit/UIKit that I'm trying to get to a release-able point. They run fine on both macOS and iOS; for the former I've also got decent support for sandboxed environments.

My goal is to write all my stuff in Rust, because I am sick and tired of writing products for the Apple ecosystem and then having to rewrite them if I want them outside of it.

I don't enjoy writing browser-wrapped applications (though they have their place, let me be clear...). I don't want to write in C just to be able to compile anywhere. IMO, Rust is the future.

/end fanboy-ism I suppose

Re:Yes, I am still learning Rust by weiming on Thursday March 12, 2020 @06:50PM (#22562810)
If you can share, how usable is your approach boilerplate/types wise? Would love to go all into Rust but the AppKit/etc. bindings get clunky very easily.
Re:Yes, I am still learning Rust by Klonoar on Thursday March 12, 2020 @07:01PM (#22562934)
I've actually settled on an approach that feels just like writing Cocoa/AppKit/UIKit. It effectively exposes wrapper types that loop in delegates, so you wind up with a feeling like you're writing classes - you just can't subclass. I've tried to keep the conventions (entry points, lifecycles, method naming) very similar so knowledge transfer is there.

I have a repo for it but the example is pretty out of date. Can see about updating it when I've got the next push ready.

Re:Yes, I am still learning Rust by weiming on Thursday March 12, 2020 @07:22PM (#22563100)
Will keep an eye out on your GitHub, just saw the repo you already have there. This is a heroic effort!
Re:Yes, I am still learning Rust by Klonoar on Thursday March 12, 2020 @10:08PM (#22564098)
If you're interested, you can kinda see what I've been trending towards here: https://twitter.com/ryanmcgrath/status/1238285152771440640

The goal is to feel very, very familiar to anyone who's done Cocoa work before. :)