►
From YouTube: Rust 2018 by Mark Sherry - Rust KW Meetup
Description
This video was recorded during the Rust KW Meetup in Kitchener-Waterloo, ON, Canada on March 5, 2019.
https://www.meetup.com/Rust-KW/events/259334630/
The new edition of Rust was released in December, bringing with it changes and promises. Mark Sherry will cover what Rust 2018 means, how editions work, and changed, and what to expect from Rust 2018 in future releases.
Talk written and presented by: Mark Sherry (https://twitter.com/alfedenzo)
Recording: Mark Sherry
A
A
If
the
compiler
are
you
using
supports
Russ
to
Anita,
it
also
supports
a
whole
bunch
of
other
features
like
a
question
mark
operator
and
that's
useful
from
a
marketing
perspective,
but
that's
how
people
were
excited
about
herself,
not
the
way
of
looking
at
it.
Is
that
rust-red
haziness
a
chance
to
make
some
briefly
changes
and
waste
them
to
break
stability
guarantees.
Otherwise,
so
a
little
over
10
years
ago
now,
Russ
Python
3
came
out
and
527
its
end
of
life
at
the
end
of
this
year
and
there's
a
lot
of
Isis
still
using
Python
2.
A
But
part
of
the
reason
that
people
dragged
their
feet
was
that
if
you
wanted
to
use
Python
3
in
your
dependencies
have
been
updated
to
you,
you
got
be
compatible
with
Python
3.
You
had
to
wait
until
they
are
updated
and
those
dependencies
might
have
other
dependencies
that
haven't
updated
or
perhaps
they
had
to
see
component
that
had
to
be
rewritten
is
understand,
rewritten
from
scratch
or
using
Python
3.
A
Yet
I
don't
need
to
worry
about
it
yet
so
if
this
all
deleted,
optioned
just
people
didn't
so
there's
a
lot
of
concern
with
Russ
2018,
with
its
backwards
incompatible
changes
that
it
might
also
suppose
the
ecosystem
the
way
that
Python
did
well.
Fortunately,
that's
not
the
case
for
starters,
both
rust
2015
and
rust,
2018,
the
common
standard
library.
So
you
don't
have.
Who
was
the
previous
II
worked?
You
now
have
to
use
different
import
statements
or
new
statements.
A
What's
more
breasts,
2018
code
can
use
for
us
2015
crates
even
better
for
us.
2015
crates
can
use
Rus
2018
crates,
so
it's
forced
to
regular
having
to
apply.
You
have
to
have
a
sufficient
recent
version
of
compiler,
but
that
implies
like
any
new
language
feature.
You
want
question
mark
operator.
Well,
you
have
to
have
the
rest
see
that
support
cetera
this
works,
because
both
editions
use
the
same
compiler
there's
just
some
flexible
comparisons.
Oh,
is
the
current
crate,
Rus
2018?
Okay,
do
this
thing
differently
instead,
but
they
both
compile
them
to
all
be
Mir.
A
A
A
A
In
Rus
2018
we
can
create
an
instance.
We
can
get
the
first
element
print
it
out
some
one,
and
then
we
can
push
me
over
to
the
list.
Great
plus
2015
doesn't
like
this
because
first
is
gonna
be
around
to
the
end
of
the
scope,
and
that
has
a
beautiful
Oro
on
the
age,
so
you're
trying
to
get
a
mutable
world.
When
we
do
the
push
sorry,
you
can't
have
a
mutable
and
immutable
poro
at
the
same
time,
so
it
fails
other
times
you
might
have
seen.
A
This
is,
if
you
ever
tried
to
do
something
like
this.
With
a
hash
map,
I
tried
to
get
an
element
and
push
it
back
in
or
something
and
Russ
2018.
This
runs
5
press
2015
does
not
like
it,
so
that
makes
a
lot
of
nice
rings
simpler.
This
case,
maybe
you'd
be
able
to
get
by
by
assigning
to
a
temporary
variable,
but
module
system
changes.
A
A
But
that
also
means
that
you
don't
have
every
macro
from
every
creature
that
you
brought
in
all
cluttering
your
namespace,
you
can
just
bring
whatever
macro
you
need
for
that.
Module
use
is
mostly
the
same
so
before
I
get
into
the
half.
2018
works.
South
beats
paying
a
bit
hundred
fifteen
works,
and
this
is
where
the
module
system
kind
of
confuses
people,
because
the
way
that
it
works
in
2015
is
simple,
consistent
and
really
easy
to
activate
build
wrong
mental
model
about
so
in
rust
of
2015.
Every
time
you
say,
use
whatever.
A
If
routes
that
path
in
the
route
module
of
your
crate
or
program,
rather
than
looking
at
things
in
the
current
module,
when
you
do
next
are
crate
it
just
perhaps
the
main
space
of
that
crate
into
whatever
module
you
call
Dexter
crater.
So
if
you
have,
you
know,
sub
module
and
you
closer
treat
there.
Everyone
else
will
have
to
since
that
module
through
that
creep
through
sub
module.
A
A
Module
either
things
that
you
declared
there
or
things
of
you
previously
important
through
use
if
it
doesn't
find
that
double
check.
Is
this
any
of
an
external
crate
so
where,
before
you
there's?
No
that
was
focusing,
but
if
you
just
use
regex
it'll
work,
if
you
want
to
access
something
in
your
trainer
programs
or
if
you
just
proceed
with
create
:
:,
if
you
need
to
disambiguate
you
in
previous
into
the
cell
phone
:,
if
you
talk
to
your
parents,
super
core
phone
goes
through
the
same
premium.
To
this
new
zone,
external
crate
still
works.
A
A
A
If
you're
familiar
with
how
the
question
mark
operator
works
and
regular
expressions.
This
is
basically
the
same
so
there's
motivating
example.
So
you've
just
got
a
simple
macro
here,
takes
its
arguments,
prints
and
math
one
per
line
and
say
we
watch
training,
comma,
because
traffic
copies
are
really
handy.
A
Unfortunately,
our
grammar
there
doesn't
match
the
trade
public.
So
what
let
us
use
it
there's
a
couple
ways
to
deal
with
that
you
could
have
a
separate
match,
rules
that
handles
the
extra
train.
Comma,
that's
up
to
you.
You
could
use
a
star
at
the
end,
so
you
can
have
zero
or
more
trailing
commas,
but
then
people
putting
the
lesser
number
of
trailing
commas.
A
Nothing
stable
is
using
this
yeah.
Just
the
signal
rate
should
make
it
easier
to
write
this
in
Christ
code
right
now.
There's
a
lot
of
debate
about
how
a
weight
should
be
used.
If
it
should
be
used
at
all.
Maybe
it
should
be
a
macro.
Do
we
want
something
prefix
or
suffix
position?
There's
a
lot
of
opinions,
I'm
not
going
to
get
into
that.
A
A
A
That's
Russ,
2018,
there's
a
couple
other
things,
because
they're
kind
of
technical
I
think
there's
stuff
to
do
with
implicit
lifetimes
and
nicer
handing
of
generics.
But
this
is
suppose
people
are
excited
about.
This
is
stuff
that
almost
likely
affect
you.
I
have
a
lot
of
time,
so
I
read
have
talked
about
how
to
upgrade
your
thing
to
rust,
trick
18.