Sean Griffin on type systems and hopes for Rust's future


Notes

Chris chats with Sean Griffin about the tradeoffs between mental overhead and type safety, the expressiveness of different type systems, and some of the places where Rust currently falls down.


Corrigenda

Sean noted he could be wrong about IEnumerable<T> not having a Sum method in C♯, and post-show research indicated that he was (it's possible it was added after he had stopped doing .NET work, of course). See the documentation for details on how IEnumerable<T>.Sum it behaves in C♯ if you're curious.


As a related note, I (Chris) have done a little bit of digging on C♯ in the interval and it's fair to say that while a lot of the "ceremony" involved in writing C♯ is annoying, it's much more than just a "slightly nicer Java", and indeed is a much nicer language than my previous, limited exposure had led me to believe. It's no Rust or F♯, but its type system is substantially more capable than Java's.


Links

fmap

Discussion of fmap with Optional in Swift
In Haskell

Rust:

Trait objects
Specialization RFC

Implementation

Diesel

Sponsors

Aleksey Pirogov
Chris Palmer
Derek Morr
Hamza Sheikh
Leif Arne Storset
Luca Schmid
Micael Bergeron
Ralph Giles ("rillian")
reddraggone9
Ryan Ollos
William Roe

Become a sponsor

Patreon
Venmo
Dwolla
Cash.me

Follow

New Rustacean:

Twitter: @newrustacean
Email: [email protected]

Chris Krycho

GitHub: chriskrycho
Twitter: @chriskrycho

Guests

Twitter Mentions