►
From YouTube: 2020-10-15 sync
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
A
Right
so
when
you
have
no
basically
the
way
a
hear
block
works,
it
has
a
series
of
statements
and
then
it
has
an
optional
expression,
and
so,
when
you
have
no
semicolon
this
is
this
is
going
to
be
the
expression
and
I
think
that's
what
we're
looking
at,
though
I
might
be
looking
at
the
wrong
thing.
So
you
see
there's
no
statements
and
there
is
an
expression
and
if
you
look
only
well
maybe
this
is
something
else,
because
here's
the
expression
is
a
block.
It
has
no
statements
here.
It
is.
A
This
is
the
real
one?
It's
a
block,
it
has
no
statements,
it
has
a
call
as
its
tail
expression
that
that's
like
the
value
of
the
block
right,
but
if
we
put
the
semicolon
in
and
we
rerun
that.
A
And
now
what
line
were
we
on
line?
379
is
probably
around
the
same
spot.
B
A
A
Yeah
anyway,
forget
the
here
tree,
it's
kind
of
hard
to
read
anyway,
but
the
point
is,
it
looks
really
different
in
the
here
and
if
we
just
jump
to
the.
A
A
B
A
So
we
need
like
spam
lent
or
something
this.
Is
it
right
and
we
have
these
debugs?
We
actually
don't.
Well,
I
don't
yeah
okay.
So
why
don't
we
dump
out
the
debug
output?
A
A
So
right,
so
this
is
my
first
go-to
thing
is:
dump
out
the
debug
output
and
try
to
get
an
idea,
and
I
think
right
so
the
way
that
that
the
way
that
lints
work
these
days
wasn't
always
the
case
they
actually
sort
of
dump
right
at
the
point
where
they
get
added
most
of
the
time.
So
we.
A
A
A
B
A
The
problem
is
in
error,
messages
and
stuff.
We
don't
want
to
print
like
a
bunch
of
debug
information,
but
because
we
only
really
have
one
way
to
print
types
is
sort
of
a
you
have
to
pass
this
flag
and
that'll
cause
it
to
dump
out
like
now.
I
know
the
actual
numbers
of
these
variables,
the
internal
identifiers-
and
sometimes
you
need
that-
and
sometimes
you
don't,
but
it
makes
it
just
adds
a
lot
more
information
into
the
printout.
A
So
now
we
have
these
two
things
we
can
look
and
what
we
know
is
that
the
here
id
we
know
that
this
this
this
type
was
something
from
diverging
fallback,
and
we
know
that
the
here
id
is
not
present
in
the
dead
nodes
set
right
right
right.
So
the
question
is
what
what
is
this?
The
here
id
of
that's
the
first
question
and
it's
local
id
9
and
all
this
code
has
changed
a
lot
since
I
last
looked
at
it.
A
But
let's,
let's
see
see
if
I
can
use
my
old
tricks,
it's
kind
of
a
pain
in
the
neck,
sometimes
to
figure
out
what
what
what
the
here
id
corresponds
to.
But
there's
a
few
ways:
you
can
do
it.
A
It
would
be
nice
if
we
had
a
better
way.
One
thing
which
I'll
just
do
is
you.
A
A
little
bit
more
debug
logs
step,
one
because
probably
we're
going
to
want
to
see
something
that
comes
outside
of
right
back.
B
A
B
A
Are
you
following,
or
am
I
going
too
fast,
no
yeah,
I'm
following
so
it
looks
like
this.
Is
the
here
id
of
the
block
itself.
B
B
B
A
We
we
added
the
code,
but
what's
the
name
of
this
file
check
mod,
maybe.
A
A
Here
self.dead
notes:
oh
it's
under
expert,
that's
kind
of
a
problem
actually
that
I
wanted
to
show
you
but
okay,
so
I
think
we
added
this
code.
There
we
go
here
in
in
this
function.
Check
expert,
basically
check
expert
with
expectation
and
the
problem
is.
We
need
similar
code
in
other
places,
because
this
is
only
applying
to
expressions.
A
There
are
a
couple
other
kinds
of
things
with
types
that
we
would
need
to
check
so
either.
Well,
we
need
to
do
one
of
two
things:
either
we
need
to
suppress
the
lint
unless
it's
an
expression.
A
I
guess
they
shouldn't
like
they're
supposed
to
always
be
unit
so
but
we'll
see,
maybe
we'll
see
but
but
blocks
for
sure
have
a
type,
because
the
black
yeah.
A
But
is
it
this
one
check
block
no
value
check
block
with
expected
that
kind
of
does
the
same
thing
as
check
expression.
B
A
B
A
And
that's
fine,
it
doesn't
have
to
change
it,
but
but
there's
where's
the
code
is
this:
it
check
mod
now
check.
A
This
one,
if
you,
if
you
read
this
expression,
function.
A
B
B
B
A
B
A
A
B
B
B
A
A
However,
you
also
those
errors
are
suppressed
if
they
occur
in
a
dependency,
oh
okay,
which
means
that's
good
because
otherwise,
like
if
some
some
crate
that
everybody
depends
on
is
broken,
then
you
it
looks
as
if
10
million
bits
of
code
are
broken,
but
actually
you
see
what
I
mean.
A
See
so
using
lens
is
pretty
useful
for
that.
Let's
see,
let's.
A
A
B
A
A
Yay
we
do
get
an
error.
Okay,
we
get
kind
of
a
lot
of
errors.
We
probably
want
to
suppress
that
a
little
bit.
Okay,
I
think
what
we
can
do.
B
B
A
A
The
next
one
is
more
local,
and
then
we
got
this
crazy
one
over
here.
They
all
make
sense,
but
probably
the
best
one
is
this
one
right.
This
is
like
yeah,
that
is
yeah,
which.
A
I
don't
know
I
don't
know
how
how
hard
to
work
at
this,
but
be
nice.
If
we
could
give
that
one.
You
know,
I
guess
one
thing
we
could
do
is
track
spans
and
like.
If
we
really
wanted
to
work
at
it,
we
would
collect
the
spans
and
find
the
spans
that
overlap
or
something
and
pick
the
smallest
one.
I
don't
know
that
seems
a
little
too
insane
or
that
seems
like
we're
working
too.
B
B
A
We
probably
could
change
that
so
that
we
visit
it
more
inside
out
than
outside
in,
but
I
don't
know
that
might
have
other
side
effects.
I
don't
know
I
can't
imagine
what
they
would
be,
but
it
doesn't.
Hopefully,
people
are
not
getting
this
error
a
lot
right
so
like
if
they
are
that's
a
problem
of
itself
of
its
own,
so
I'm
kind
of
inclined
not
to
kind
of
not
optimize
that
stuff
until
we
know,
but
I
wanted
to
see
so
somewhere
here.
Okay,
right,
oh,
this
is
useless.
A
A
That
one
is
zero,
so
never
mind
my
heuristic
wouldn't
work
anyway.
Oh,
I
think
I
know
why
that
is
actually
so
fun.
A
Oh,
actually,
I
don't
know,
I
think
I
think
you,
okay,
I
think
what's
happening
here
actually,
is
that
this
anti-original
is
the
original
inference
variable
if
we
resolved
it.
A
We
could
probably
figure
this
out.
We
would
find
that
it's
unified
with
the
variable
that
fell
back
to
not
never,
but
that
that
state
isn't
really
exposed
to
us
very
easily.
Now
that
I
think
about
it.
So
all
right
so
short
version
is
suppressing
these
lenses.
A
These
duplicates
is
going
to
be
a
pain
in
the
neck,
but
if
we
care
to
do
it-
and
hopefully
we
just
don't
have
to-
I
think
you
know
one
thing-
we
could
do
this-
the
absolutely
simplest
suppression
would
be
to
say
just
report
one
per
function
I
see
or
something
like
that.
You
know
or.
A
Per
statement-
that's
probably
fair
enough
anyway.
Let's
this
is
good.
We
fixed
the
bug.
What
is
this
foo?
I
don't
know,
but
this
is
where
we
made
the
change.
B
B
A
I
think
we
should
clean
up
the
or
create
a
helper
function
to
dead
nodes.
That
explains
what
is
going
on.
In
particular,
I
would
want
to
document
that
this
function
is
invoked
on
the
way
up
the
tree
so
that
it
so
that
nodes
are
added
to
dead
nodes
set
if
they
diverge
before
completing.
A
A
And
then
next
we
would
want
to,
and
maybe
before
that
even
turn
the
lint
to
deny
by
default
and
make
sure
yeah
rendered
built.
We'll
do
that
right
now,.
A
See
what
happens
hopefully
that
works,
and
then
we
want
to
probably
should
improve
the
error
message-
yeah,
not
so
great.
But
let's.
A
A
There
was
an
original
crate
that
caused
a
problem
in
the
first
place.
I
think
it
would.
I
think
it
was
the
objective
secret
yeah
and
that's
how
I
extracted
that
test
case,
but
we
ought
to
go
back
and
check
that
the
original
also
gets
a
warning,
or
else
you
know.
Maybe
I
missed
some
detail.
B
B
B
A
A
Well
sometimes
yeah
the
crater
check
runs
are
much
faster,
but
there
is
often
I
don't
actually
know
how
long
they
take,
but
the
crater
checker,
like
significantly
faster
than
a
full
grader,
run,
maybe
like
10x,
faster
or
something
anymore.
Okay,
because
they
don't
have
to
actually
run
tests
or
anything.
They
just
do
a
cargo
check.
A
But
there's
often
a
cube
and
that's
the
problem
so
far
so
good,
it
looks
like
we
built
standard,
or
at
least
we
built
core
rather.
B
Nice,
so
this
is
like
if,
if
we
run
crater-
and
we
don't
see
like
any
major
issue,
then
that
is
the
end
of
it.
We
don't
just
the
lint
is
good
enough
right.
You
think.
B
A
Great
okay,
that's
great,
then
we
should
be
able
to
have
to
kind
of
page
back
in.
Is
this
the
only
thing
we
were
blocked
on?
Probably
then,
I
think
what
we
want
to
do.
A
We
probably
want
to
land
this
lens,
we'll
have
to
figure
out
exactly
the
ordering,
but
I
suspect
we
actually
want
to
land
the
lin,
even
even
if
we
didn't
like
the
lint
is
called
fallback
to
never
type
and
we
might
want
to
rename
it.
A
But
the
truth
is
that,
even
if
we
never
changed
the
fallback,
even
if
it
still
fell
back
to
unit
type,
it's
probably
worth
linting
code
that
relies
on
the
fallback
period,
because.
B
A
Not
meant
to
affect
live
code,
it's
meant
to
affect
dead
code
only
so
I
think
we
could
land
this
lint
as
a
first
pass.
Just
saying
like
you
should
really
add
some
explicit
type
hint,
especially
if
it
doesn't
seem
to
affect
a
lot
of
code
and
then
we
can
separately
do
the
fallback.
You
know.
A
A
We
could
issue
this
lint
as
a
future
compatibility
warning.
For
example,
it's
not
perfect,
but
it's
kind
of
covering
what
we
consider
to
be
the
worst
cases
where,
where
we
expect
to
change
this,
and
so
you
get
a
warning
that
it's
going
to
change
and
if
you
wanted
to
stay,
you
should
add
some
explicit
type
annotations.
B
Yeah,
that's
sounds
reasonable.
A
I'll
post
this
list
in
zulup-
and
I
guess
we
did
number
one
but
maybe.
A
You
can,
I
can
point
you
at
the
github
issue,
where
the
author
of
the
crate
was,
I
bet
they
could
supply
you
a
test
case
or
something.