Discover
New Rustacean

103 Episodes
Reverse
A story and a dream (and the promise of Rust): the final episode of New Rustacean!
Show Notes
Rust by Example
Winning Slowly
Mass Affection
buttondown.email/rewrite
patreon.com/chriskrycho
Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Arun Kulshreshtha
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Cristian Paul
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Dominic Cooney
Doug Reeves
Douglas Correa
Edmund Kump
Eduard Knyshov
Embark Studios
Eugene Bulkin
Evan Stoll
Fabio (decathorpe)
Fabio Correa
Freeman P. Pascal
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
Hugo Josefson
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jeff May
Jendrik Illner
Jerome Froelich
JockeTF
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Kyle
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Oladapo Fadeyi
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Romain Chossart
Ryan Blecher
Ryan Osial
Satoshi Yoshikawa
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Sven Huster
Tim Brooks
Tim Small
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
Zak van der Merwe
Zachary Snyder
Zach Peters
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Contact
New Rustacean:
Twitter: @newrustacean
Email: hello@newrustacean.com
Chris Krycho
GitHub: chriskrycho
Twitter: @chriskrycho
WASI, Option::copied, and the future of async/await syntax!
Show Notes
Rust 1.34.1
release notes
blog post
discussion about Error::type_id
Rust 1.34.2
release notes
blog post
discussion about Error::type_id
Rust 1.35
release notes
blog post
WASI
The Bike Shed episode
Async/await
std::futures API docs
internal thread on syntax for .await
Sponsors
Thanks to Parity for sponsoring the show and hiring Rust developers!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Arun Kulshreshtha
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Cristian Paul
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Dominic Cooney
Doug Reeves
Douglas Correa
Edmund Kump
Eduard Knyshov
Embark Studios
Eugene Bulkin
Evan Stoll
Fabio (decathorpe)
Fabio Correa
Freeman P. Pascal
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
Hugo Josefson
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jeff May
Jendrik Illner
Jerome Froelich
JockeTF
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Kyle
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Oladapo Fadeyi
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Romain Chossart
Ryan Blecher
Ryan Osial
Satoshi Yoshikawa
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Sven Huster
Tim Brooks
Tim Small
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
Zak van der Merwe
Zachary Snyder
Zach Peters
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean:
Twitter: @newrustacean
Email: hello@newrustacean.com
Chris Krycho
GitHub: chriskrycho
Twitter: @chriskrycho
Automatic generation of FFI types between Rust and C APIs.
Show Notes
bindgen
the official guide
API docs
cbindgen
a blog post by one of the main authors of the crate
rust-ffi
Binding libraries for scripting languages
PyO3
Neon
Rustler
a great write-up from the folks at Discord
Helix
Sponsors
Thanks to Parity for sponsoring the show and hiring Rust developers!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Arun Kulshreshtha
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Cristian Paul
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Dominic Cooney
Doug Reeves
Douglas Correa
Edmund Kump
Eduard Knyshov
Embark Studios
Eugene Bulkin
Evan Stoll
Fabio (decathorpe)
Fabio Correa
Freeman P. Pascal
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
Hugo Josefson
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jeff May
Jendrik Illner
Jerome Froelich
JockeTF
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Kyle
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Oladapo Fadeyi
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Romain Chossart
Ryan Blecher
Ryan Osial
Satoshi Yoshikawa
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Sven Huster
Tim Brooks
Tim Small
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
Zak van der Merwe
Zachary Snyder
Zach Peters
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean:
Twitter: @newrustacean
Email: hello@newrustacean.com
Chris Krycho
GitHub: chriskrycho
Twitter: @chriskrycho
Exposing Rust types and functions to C API consumers.
Show Notes
It’s impossible to make the declarations below follow the order I talked through them on the recording without also making them horrible to read, so just use this outline instead:
add_in_rust
Strings
concat_strings
free_rust_string
Point
point_translate
union
OpaquePoint
opaque_point_new
opaque_point_translate
opaque_point_free
Links
Rust FFI Omnibus
the repository for the show
RFC #2195
Sponsors
Thanks to Parity for sponsoring the show and hiring Rust developers!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Arun Kulshreshtha
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Cristian Paul
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Dominic Cooney
Doug Reeves
Douglas Correa
Edmund Kump
Eduard Knyshov
Embark Studios
Eugene Bulkin
Evan Stoll
Fabio (decathorpe)
Fabio Correa
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
Hugo Josefson
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jeff May
Jendrik Illner
Jerome Froelich
JockeTF
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Oladapo Fadeyi
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Romain Chossart
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
Zak van der Merwe
Zachary Snyder
Zach Peters
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean:
Twitter: @newrustacean
Email: hello@newrustacean.com
Chris Krycho
GitHub: chriskrycho
Twitter: @chriskrycho
Item visibility and pub(<restricted>) as API design tools.
Show Notes
The easiest and most effective way to understand the example in this case will simply be to look directly at the source code. You can read the docs for each of the nested modules, but you’ll be doing a lot of navigating around for that.
Also, I am using Cargo’s --document-private-items flag, so that you can see all the items in all the modules, even those which are not public, but note that usually you would not see docs for those!
Links
the reference on visibility
RFC #1422
episode source code
e020
Sponsors
Thanks to Manning for sponsoring the show and giving all of you a 40%-off discount on their whole store (but especially their WebAssembly in Action MEAP) at deals.manning.com/new-rustacean!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Arun Kulshreshtha
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Cristian Paul
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Dominic Cooney
Doug Reeves
Douglas Correa
Edmund Kump
Eduard Knyshov
Embark Studios
Eugene Bulkin
Evan Stoll
Fabio (decathorpe)
Fabio Correa
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
Hugo Josefson
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jeff May
Jendrik Illner
Jerome Froelich
JockeTF
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Oladapo Fadeyi
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Romain Chossart
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
Zak van der Merwe
Zachary Snyder
Zach Peters
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
Moar const fn, some Pin, and alternative Cargo registries!
Show Notes
1.33 release notes
Pin
RFC
API docs
1.34 release notes
Sponsors
Thanks to Parity for sponsoring the show and hiring Rust developers!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Arun Kulshreshtha
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Cristian Paul
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Dominic Cooney
Doug Reeves
Douglas Correa
Edmund Kump
Eduard Knyshov
Embark Studios
Eugene Bulkin
Evan Stoll
Fabio (decathorpe)
Fabio Correa
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
Hugo Josefson
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jeff May
Jendrik Illner
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Oladapo Fadeyi
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zach Peters
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
Using Rust’s Foreign Function Interface (FFI) with C!
Show Notes
The code samples here directly match the things I described in the show, so you will likely want to look at add and ffi::add, then Point, translate, and ffi::translate in that order.
Links
Other helpful Rust FFI discussions:
The Rust Programming Language’s materials
the nomicon
Rust FFI Omnibus
the Reference’s discussion
the associated Rust API docs
Sponsors
Thanks to Manning for sponsoring the show and giving all of you a 40%-off discount on their whole store (but especially Carol Nichols’ and Jake Goulding’s Rust in Motion video content and the Rust in Action MEAP!) at deals.manning.com/new-rustacean
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Arun Kulshreshtha
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Doug Reeves
Douglas Correa
Edmund Kump
Eduard Knyshov
Embark Studios
Eugene Bulkin
Evan Stoll
Fabio (decathorpe)
Fabio Correa
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
Hugo Josefson
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jendrik Illner
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Oladapo Fadeyi
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zach Peters
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
How I make the show, and why you won’t find it on Google Play, Spotify, or Stitcher.
Show Notes
Winning Slowly
guest lectures on podcasting: A, B
Audio recording/editing/production software:
Icecast
Rogue Amoeba
Audio Hijack
Loopback
Ferrite
iZotope RX
previous episodes of interest
building a markdown link extractor
using rustdoc
Sponsors
Thanks to Parity for sponsoring the show and hiring Rust developers!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Arun Kulshreshtha
[beaorn]
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Doug Reeves
Douglas Correa
Edmund Kump
Eduard Knyshov
Embark Studios
Eugene Bulkin
Evan Stoll
Fabio (decathorpe)
Fabio Correa
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
Hugo Josefson
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jendrik Illner
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Oladapo Fadeyi
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
A story about parsing command-line arguments manually and some thoughts on “rookie mistakes.”
Show Notes
why you might want to invoke the same program with different names
Python’s argparse library
Commander in Node
clap
structopt
pulldown-cmark
Sponsors
Thanks to Parity for sponsoring the show and hiring Rust developers!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Doug Reeves
Douglas Correa
Eduard Knyshov
Embark Studios
Eugene Bulkin
Fabio (decathorpe)
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jendrik Illner
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
Associated items: functions and methods, constants, types, and (very briefly!) GATs.
Show Notes
Iterator source
the first Traits deep dive episode
RFC #1598
RFC #195
The Reference on associated items
Rust 1.20
deals.manning.com/new-rustacean
Sponsors
Thanks to Manning for sponsoring the show and giving all of you a 40%-off discount on their whole store (but especially Carol Nichols’ and Jake Goulding’s Rust in Motion video content and the Rust in Action MEAP!) at deals.manning.com/new-rustacean
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Lozada
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
Arlo (Hyena)
beaorn
Behnam Esfahbod
Benjamin Manns
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Christoffer Ceutz
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Carroll
David Hewson
Derek Morr
Doug Reeves
Douglas Correa
Eduard Knyshov
Embark Studios
Eugene Bulkin
Fabio (decathorpe)
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jason Bowen
Jendrik Illner
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Mou
Joseph Schrag
Joe Percy
Justin Ossevoort
Kai Yao
Kazutaka Mise
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Malnormalulo
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Soren Bramer Schmidt
Steffen Loen Sunde
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
dbg!, unified paths, more places you can use Self, and a bunch of const fn stabilizations—plus some neat community highlights!
Show Notes
Rust 1.32
blog post
release notes
smaller builds on Twitter
Amethyst
examples
docs
RustConf 2018 keynote
insta
Sponsors
Thanks to Parity for sponsoring the show again. Go check out their Rust jobs!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Arlen Haftevani
beaorn
Behnam Esfahbod
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Cat Dad
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Hewson
Derek Morr
Doug Reeves
Douglas Correa
Eduard Knyshov
Embark Studios
Eugene Bulkin
Fabio (decathorpe)
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
Hoàng Đức Hiếu
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonah
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joe Percy
Justin Ossevoort
Kai Yao
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Steffen Loen Sunde
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
Stabilizing rustfmt, clippy, tool lints, and const fn (all in both editions!), and the 2018 Edition-specific features: syntax changes and non-lexical lifetimes!
Show Notes
Rust 1.31 Blog Post
Rust 1.31 Release Notes
Rust 2018 Edition Guide
a simple NLL example
const fn in the reference and “const contexts”
“uniform paths”
the raw string syntax
Sponsors
Thanks to Parity for sponsoring the show again. Go check out their Rust jobs!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
beaorn
Behnam Esfahbod
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Hewson
Derek Morr
Doug Reeves
Eduard Knyshov
Embark Studios
Eugene Bulkin
Fabio (decathorpe)
Fábio Botelho
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Marhee
Justin Ossevoort
Kai Yao
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Steffen Loen Sunde
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
An overview of the edition, and some of the improvements that are available in both the 2015 and 2018 editions: better lifetime elision, some Cargo features, and some library stabilizations.
Show Notes
Rust 1.31 Blog Post
Rust 1.31 Release Notes
Rust 2018 Edition Guide
Previous episodes of direct interest:
News: Rust 1.28
News: Rust 1.29 and 1.30
Sponsors
Thanks to Parity for sponsoring the show again. Go check out their Rust jobs!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
beaorn
Behnam Esfahbod
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Hewson
Derek Morr
Doug Reeves
Eduard Knyshov
Embark Studios
Eugene Bulkin
Fabio (decathorpe)
Fábio Botelho
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Marhee
Justin Ossevoort
Kai Yao
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robbie Clarken
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Steffen Loen Sunde
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
Show Notes
Things we mentioned on the show:
the playground
Ferrous Systems
Magical JSON: https://quicktype.io
EddyB’s company: Lyken Software Solutions
Integer32 blog: “Tech Conference Budget Case Study: Rust Belt Rust 2018”
Sponsors
Thanks to Manning for sponsoring this episode; don’t forget to grab some of their content at 40% off using the code podnewrust18!
Thanks to Parity for sponsoring the show again. Go check out their Rust jobs!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Kryvomaz
Alexander Payne
Andrew Dirksen
Andrew Thompson
Anthony Deschamps
Anthony Scotti
beaorn
Behnam Esfahbod
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Caryn Finkelman
Cass Costello
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Dan Abrams
Daniel
Daniel Bross
Daniel Collin
Daniel Mason
David Hewson
Derek Morr
Doug Reeves
Eduard Knyshov
Embark Studios
Eugene Bulkin
Fabio (decathorpe)
Fábio Botelho
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jerome Froelich
Joar Wandborg
Johan Andersson
John Rudnick
Jon
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Marhee
Justin Ossevoort
Kai Yao
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Melanson
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Pierre-Antoine Champin
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Steffen Loen Sunde
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
An intro to unsafe Rust and Rust’s idea of safety.
Show Notes
Errata
A quick correction: on the show I said that a trait needed to be unsafe when it had an unsafe fn method. This isn’t correct: safe traits can have unsafe methods, and unsafe traits can exist without any methods at all (as implied by my reference to Send and Sync). You can see this in practice in the following example, which compiles just fine!
trait ASafeTrait {
unsafe fn unsafe_method() {}
}
unsafe AnUnsafeTrait {}
The idea of an unsafe trait is that it has some conditions which you must uphold to safely implement it – again, just as with Send and Sync. In the case of most traits, this will be because some trait method has invariants it needs to hold else it would cause undefined behavior. For another example of this, see the (unstable as of the time of recording) trait std::iter::TrustedLen.
Thanks to Rust language team member @centril for noting this to me after listening when I was recording the show live!
Links
The Rust Programming Language, Chapter 19: Unsafe
The Nomicon
“Rust and OpenGL from Scratch”, by Nerijus Arlauskas
Examples
Borrow-checked code in unsafe
let mut f = String::from("foo");
unsafe {
let borrowed = &mut f;
let borrow_again = &f;
println!("{}", borrowed);
// This would be unsafe and throw an error:
// println!("{}", borrow_again);
}
(See it in a playground)
Safely mutating a raw pointer
let f = Box::new(12);
let mut g = Box::into_raw(f);
g = &mut (g + 10);
(See it in a playground)
Sponsors
Thanks to Parity for sponsoring the show again. Go check out their Rust jobs!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Payne
Alexander Kryvomaz
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Behnam Esfahbod
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Brian McCallister
Bryan Stitt
Bryce Johnston
Caryn Finkelman
Cass Costello
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Daniel
Dan Abrams
Daniel Bross
Daniel Collin
Daniel Mason
David Hewson
Derek Morr
Doug Reeves
Eugene Bulkin
Fábio Botelho
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jerome Froelich
John Rudnick
Jon
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Marhee
Justin Ossevoort
Kai Yao
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Scholtens
Peter Tillemans
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Steffen Loen Sunde
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
Procedural macros, better paths, and the Rust 2018 beta!
Show Notes
Rust 1.29:
blog post
release notes
Rust 1.30:
blog post
release notes
RFC: path clarity
Sponsors
Thanks to Parity for sponsoring the show again. Go check out their Rust jobs!
Patreon Sponsors
Adam Green
Aleksey Pirogov
Alexander Payne
Alexander Kryvomaz
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Behnam Esfahbod
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Bryan Stitt
Bryce Johnston
Caryn Finkelman
Cass Costello
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Daniel
Dan Abrams
Daniel Bross
Daniel Collin
Daniel Mason
David Hewson
Derek Morr
Doug Reeves
Eugene Bulkin
Fábio Botelho
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
“Jake”“ferris”" Taylor"
Jako Danar
James Cooper
James Hagans II
Jerome Froelich
Joar Wandborg
John Rudnick
Jon
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Marhee
Justin Ossevoort
Kai Yao
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Sanders
Nathan Sculli
Nick Coish
Nick Gideo
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Tillemans
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Steffen Loen Sunde
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
Musings inspired by a project translating TypeScript to Rust
Sponsors
Thanks to Manning for sponsoring the show and giving all of you a 40%-off discount on their whole store (but especially Carol Nichols’ and Jake Goulding’s Rust in Motion video content and the Rust in Action MEAP!) at deals.manning.com/new-rustacean
Patreon Sponsors
Aaron Turon
Adam Green
Aleksey Pirogov
Alexander Payne
Alexander Kryvomaz
Andrew Thompson
Anthony Deschamps
Anthony Scotti
Behnam Esfahbod
Benjamin Wasty
Brandon ‘Spanky’ Mills
Brian Casiello
Brian Manning
Bryan Stitt
Bryce Johnston
Caryn Finkelman
Cass Costello
Chap Lovejoy
Charlie Egan
Chip
Chris Palmer
Daniel
Dan Abrams
Daniel Bross
Daniel Collin
Daniel Mason
David Hewson
Derek Morr
Doug Reeves
Eugene Bulkin
Fábio Botelho
Gaveen Prabhasara
Graham Wihlidal
Henri Sivonen
Ian Jones
“Jake”“ferris”" Taylor"
James Cooper
James Hagans II
Jerome Froelich
Joar Wandborg
John Rudnick
Jon
Jonathan Knapp
Jonathan Turner
Joseph Hain
Joseph Marhee
Justin Ossevoort
Kai Yao
Keith Gray
Kilian Rault
Lee Jenkins
Luca Schmid
Luiz Irber
Lukas Eller
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Max R.R. Collada
Messense Lv
Micael Bergeron
Michael Mc Donnell
Michael Sanders
Nathan Sculli
Nick Coish
Nick Stevens
Nicolas Pochet
Olaf Leidinger
Oliver Uvman
Oluseyi Sonaiya
Ovidiu Curcan
Pascal
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Tillemans
Ralph Giles
Ramon Buckland
Randy MacLeod
Raph Levien
Richard Dallaway
Rob Tsuk
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Scott Moeller
Sebastián Ramírez Magrí
Simon Dickson
Simon G
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tim Süberkrüb
Tom Prince
Toolmaker’s Guild
Ty Overby
Tyler Harper
Victor Kruger
Will Greenberg
William Roe
Zak van der Merwe
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean: + Twitter: @newrustacean + Email: hello@newrustacean.com
Chris Krycho + GitHub: chriskrycho + Twitter: @chriskrycho
#[doc(include = “../docs/bonus/translating-between-languages.md”)] pub struct Script;
What burnout is, the many ways it can happen to us, and what we can do about it.
Show Notes
My blog posts on burnout (and the RSS feed)
Mayo clinic guidelines
Sponsors
Aaron Turon
Alexander Payne
Anthony Deschamps
Anthony Scotti
Antonin Carette
Aleksey Pirogov
Andreas Fischer
Andrew Thompson
Austin LeSure
Behnam Esfahbod
Benjamin Wasty
Brent Vatne
Brian Casiello
Brian Manning
Chap Lovejoy
Charlie Egan
Chris Jones
Chris Palmer
Damien Stanton
Dan Abrams
Daniel Bross
Daniel Collin
Daniel Mason
Daniel P. Clark
David Hewson
Derek Morr
Eugene Bulkin
Graham Wihlidal
Hans Fjällemark
Henri Sivonen
Ian Jones
James Cooper
Jerome Froelich
Joar Wandborg
John Rudnick
Jon
Jonathan Turner
Joseph Hain
Jupp Müller
Justin Ossevoort
Karl Hobley
Keith Gray
Kilian Rault
Laurie Hedge
Luca Schmid
Lukas Eller
Luiz Irber
Mark LeMoine
Martin Heuschober:
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Messense Lv
Micael Bergeron
Michael Mc Connell
Nathan Sculli
Nick Coish
Nick Stevens
Nicolas Pochet
Oluseyi Sonaiya
Ovidiu Curcan
Pascal Hertleif
Patrick O’Doherty
Paul Naranja
Paul Osborne
Peter Tillemans
Ralph Giles (“rillian”)
Raj Venkalil
Ramon Buckley
Randy MacLeod
Raph Levien
reddraggone9
Richard Dallaway
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Sebastián Ramírez Magrí
Shane Utt
Simon Dickson
Simon G.
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Timm Preetz
Tom Prince
Ty Overby
Tyler Harper
Vesa Kaihlavirta
Victor Kruger
Will Greenberg
William Roe
Yaacov Finkelman
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean:
Twitter: @newrustacean
Email: hello@newrustacean.com
Chris Krycho
GitHub: chriskrycho
Twitter: @chriskrycho
Stable `#[global_allocator]`, more Rust 2018 Edition schedule news, video learning resources, and a static site generator!
Show Notes
Rust 1.28:
blog post
release notes
wee_alloc:
repository
blog post
rustfmt RC
Nick Cameron’s LinuxConfAu 2018 tutorial
Gutenberg
Sponsors
Aaron Turon
Alexander Payne
Anthony Deschamps
Anthony Scotti
Antonin Carette
Aleksey Pirogov
Andreas Fischer
Andrew Thompson
Austin LeSure
Behnam Esfahbod
Benjamin Wasty
Brent Vatne
Brian Casiello
Chap Lovejoy
Charlie Egan
Chris Jones
Chris Palmer
Coleman McFarland
Damien Stanton
Dan Abrams
Daniel Collin
Daniel Mason
Daniel P. Clark
David W. Allen
David Hewson
Derek Buckley
Derek Morr
Eugene Bulkin
[Hans Fjällemark]
Henri Sivonen
Ian Jones
Jakub “Limeth” Hlusička
James Cooper
Jerome Froelich
Joar Wandborg
John Rudnick
Jon
Jonathan Turner
Joseph Hain
Jupp Müller
Justin Ossevoort
Karl Hobley
Keith Gray
Kilian Rault
Laurie Hedge
Luca Schmid
Luiz Irber
Mark LeMoine
Martin Heuschober:
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Messense Lv
Micael Bergeron
Nathan Sculli
Nick Coish
Nick Stevens
Oluseyi Sonaiya
Ovidiu Curcan
Pascal Hertleif
Patrick O’Doherty
[Paul Naranja]
Peter Tillemans
Ralph Giles (“rillian”)
Raj Venkalil
Ramon Buckley
Randy MacLeod
Raph Levien
reddraggone9
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Sascha Grunert
Sebastián Ramírez Magrí
Shane Utt
Simon Dickson
Simon G.
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Timm Preetz
Tom Prince
Ty Overby
Tyler Harper
Vesa Kaihlavirta
Victor Kruger
Will Greenberg
William Roe
Yaacov Finkelman
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean:
Twitter: @newrustacean
Email: hello@newrustacean.com
Chris Krycho
GitHub: chriskrycho
Twitter: @chriskrycho
How Rust both borrows from FP languages and charts its own, very different course.
Show Notes
Sponsored by Parity Technologies! Parity is hiring Rust developers so if you’re interested, you should check out their job listings!
Links
Maybe Haskell
“shared mutable state is the root of all evil”
“code smells”
Persistent Data Types/Structures
rpds crate
immutable.rs
Sponsors
Aaron Turon
Alexander Kryvomaz
Alexander Payne
Anthony Deschamps
Anthony Scotti
Antonin Carette
Aleksey Pirogov
Andreas Fischer
Andrew Thompson
Austin LeSure
Behnam Esfahbod
Benjamin Wasty
Brent Vatne
Brian Casiello
Chap Lovejoy
Charlie Egan
Chris Jones
Chris Palmer
Coleman McFarland
Damien Stanton
Dan Abrams
Daniel Collin
Daniel Mason
Daniel P. Clark
David W. Allen
David Hewson
Derek Buckley
Derek Morr
Eugene Bulkin
[Hans Fjällemark]
Henri Sivonen
Ian Jones
Jakub “Limeth” Hlusička
James Cooper
Jerome Froelich
John Rudnick
Jon
Jonathan Turner
Joseph Hain
Jupp Müller
Justin Ossevoort
Karl Hobley
Keith Gray
Kilian Rault
Laurie Hedge
Luca Schmid
Luiz Irber
Mark LeMoine
Martin Heuschober
Masashi Fujita
Matt Rudder
Matthew Brenner
Matthias Ruszala
Max Jacobson
Messense Lv
Micael Bergeron
Nathan Sculli
Nick Stevens
Oluseyi Sonaiya
Ovidiu Curcan
Pascal Hertleif
Patrick O’Doherty
[Paul Naranja]
Peter Tillemans
Ralph Giles (“rillian”)
Raj Venkalil
Ramon Buckland
Randy MacLeod
Raph Levien
reddraggone9
Robert Chrzanowski
Ryan Blecher
Ryan Osial
Sebastián Ramírez Magrí
Shane Utt
Simon G.
Steve Jenson
Steven Knight
Steven Murawski
Stuart Hinson
Tim Brooks
Tom Prince
Ty Overby
Tyler Harper
Vesa Kaihlavirta
Victor Kruger
Will Greenberg
William Roe
Yaacov Finkelman
Zachary Snyder
Zaki
(Thanks to the couple people donating who opted out of the reward tier, as well. You know who you are!)
Become a sponsor
Patreon
Venmo
Dwolla
Cash.me
Flattr
PayPal.me
Contact
New Rustacean:
Twitter: @newrustacean
Email: hello@newrustacean.com
Chris Krycho
GitHub: chriskrycho
Twitter: @chriskrycho