►
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
A
A
So,
last
time
where
we
broke
off
was
we
were
discussing
the
purity
trekking
rules
for
Jessie
and
Michael.
Had
you
know,
proposes
this
very
inside-out
compared
to
the
way
I
was
thinking
of
it,
we're
starting
with
the
exports
and
working
backward,
and
that
looked
like
it
was
going
to
work
out
very
well
and
then
I
asked
Daria
how
this?
A
D
D
A
A
B
A
Sawa's
now
we
get
a
thumbs
up
so
I
think
sounds
like
we're.
Working
I
see
a
checkmark
icon
on
Michaels
yeah.
It
seems
good.
D
B
A
Which,
wherever
you
want
to
start
doing
it
specifically
with
regard
to
that
example,
would
certainly
be
good,
the
alright
so
actually
could
yeah.
Could
you
go
ahead
and
post
the
example.
A
D
B
B
A
B
A
The
so
so
a
the
way
we
got
to
this
example
is
that
is
by
contrasting
putting
the
count
variable
inside
the
make
through
versus
putting
the
count
variable
at
top
level
and
if
there's
top-level
mutable
state,
then
of
course
make
foo
is
not
actually
pure.
Whereas
if
the
count
variable
is
inside
the
make
foo
then
make
foods
pure,
but
foo
is
not
pure
and.
A
And
then
so
now
that
then
the
question
was,
and
the
question
we
were
examining
is:
do
we
have
a
set
of
static,
checking
rules
that
we
understand
better,
sound
and
we'll
make
those
decisions,
in
other
words
that
in
this
code,
make
foo
is
pure.
So
this
is
a
well-formed
pure
module,
whereas
if
count
is
outside
then
make
foo
is
not
pure
and
would
be
rejected
by
the
purity.
A
C
A
C
So
my
example
is:
if
we
have
an
unhardened
array
on
the
outside
of
make
food
so
say
we
have
an
array
counters
whose
content
is
mutable
then
from
within
make
food.
If
we
reference
that
counters
array
some
index
on
the
array
that
would
have
been
allowed
by
the
old
static
checking
rules,
but
basically
what
I
was
coming
towards
is
when
we
harden
a
value
for
export
from
a
function,
we
essentially
need
to
harden
its
return,
values
and
those
return
values
and
so
on
and
so
on.
A
A
The
things
we
can
do
soundly
are
reason
about
scope
and
within
a
scope,
reason
about
you,
know,
control
flow
and
and
use
occurrences
and
defining
occurrences,
and
all
this,
which
is
what
we
and
that's
all
we've
been
leaning
on,
but
in
wyvern
you've
got
a
fully
statically
typed
language
within
it
with
a
type
system.
That's
quite
ambitious
right.
B
Okay,
so
how
this
compares
to
wyvern?
First
of
all,
we
don't
have
a
notion
of
a
pure
function
well
in,
in
the
sense
how
its
presented
here
we
can
talk
about
pure
modules
right
and
then
like
module,
module.
Functors
themselves
are
pure,
but
we
don't
really
discuss
the
functions
themselves
as
pure
and
on
pure
necessarily
or.
A
B
So
here
it
looks
to
me
like
it
would
be
something
like
at
the
in
wyvern.
It
would
be
at
the
top
level
function,
but
the
top
level
have
pretty
much
any
authority
that's
available,
so
the
top
level
is
not
pure
and
then,
if
it
was
say,
if
the
function
make
foo
was
in
a
separate
file,
so
that
would
be
a
module
definition.
Then
the
fact
that
the
count
is
I
believe
it's
a
mutable
field
right.
So
then.
A
B
A
B
A
B
So
what
it
would
be
and
wyvern
like
if
it
wasn't
a
module,
so
then
this
count
would
be
a
field.
Then,
if
there's
a
mutable
field,
then
then
make
foo
module
would
be,
would
be
a
resource
module
and
then,
if
the
count
field
is
immutable,
then
it
is,
it
could
be
a
pure
one
depending
what
else
is
in
the
module.
B
A
The
counter,
I
would
think
would
be
a
mutable
field.
The
equivalent
wyvern
code
for
that
for
what's
on
the
screen
right
now,
would
be
that
count
would
be
a
mutable
field
of
the
foo
function,
not
of
the
make
foo
function,
because
what
this
code
is
doing
is
every
time
you
call
make
foo.
It
makes
a
new
count
variable
and
a
new
foo
function
that
captures
that
count.
Variable.
B
C
A
A
A
B
A
C
B
But
as
I
started
so
function
in
itself,
so
in
wyvern
it
can
be
either
a
top-level
function
or
it
can
be
a
function
inside
a
module
and
we
don't
talk
about
all
this
function
is
pure
or
not.
We
talk
more
we're
more
interested
in
whether
the
module
is
pure
or
not.
So
if
this
is
a
top-level
function,
then
it's
kind
of
irrelevant
for
us,
whether
it's
pure
or
not,
it's
it's
located
in
the
in
the
top
level,
which
has
access
to
any
kind
of
resources,
so
it's
already
presumably
like
it
can
do
whatever
it
wants.
B
B
A
Yeah,
so
okay,
so
I
thought
so
I
think
I
understand.
Now
what
I
was
misunderstanding.
I
was
thinking
in
terms
of
everything
we're
seeing
first
of
all,
being
inside
a
wyvern
module,
not
when
you
say
top
level
when
you're
talking
about
wyvern
you're
talking
about
sort
of
the
main
of
an
application,
the
thing
that
has
all
the
authority
of
the
process-
yes.
A
So
so
I
was
yeah,
so
I
was
definitely
thinking
about
this
as
inside
a
module
rather
than
at
top
level
and
I
was
thinking
about
this
code.
Appearing
literally
has
a
wyvern
function,
definition
defining
a
function,
make
foo
and
where
the
module
itself
was
declared
to
be
a
pure
module
and
then
asking
would
wyvern
approve
this
code
as
being
the
cthey.
You
know
as
being
the
code
for
a
pure
module,
meaning
that
make
foo
is
not
a
functor,
but
is
just
a
exported
pure
value
right.
B
B
B
A
A
B
B
The
rules
would
be
that
so
there
it
takes
no
arguments,
so
it
it
gets.
No
resources
from
the
outside.
Also,
the
assumption
is
that
the
module
in
which
make
foo
is
is
also
pure.
So
there's
no.
There
are
no
resources
around
and
there's
no
state
inside
the
module
itself
and
it's
okay
to
have
local
variables
inside
functions,
and
we
it
get.
It
can
return
a
resource.
B
A
Mutable
state,
but
the
mutable
state
is
not
reachable
from
what
the
module
exports.
This
is
one
of
the
issues
that
came
up
in
the
original
purifying
checking
rules
for
Jessie
that
Kate
and
I
defined
versus
Michael
suggestion
from
last
time
is.
We
were
reasoning,
bottom-up
and
Michael
was
reasoning
top
down
from
the
exports.
If
there
was
top-level
mutable
state
that
was
not
reachable,
then
by
Michaels
rules
that
did
not
cause
the
the
module
to
be
judged
impure.
A
B
B
A
C
Yeah,
just
to
clarify
what
I
was
actually
suggesting
at
the
end
of
that
meeting
was
an
outside-in
approach
where
we
say
all
the
module
level.
Declarations
have
to
be
hardly
and
all
the
exports
upwards
need
to
be
hardened
as
well.
C
A
C
A
A
C
A
C
C
So
what
I'm
talking
about
here
is
a
primitive
that
takes
a
route.
This
is
the
function
that
it
defines,
takes
root
objects,
maybe
Rhapsody
if
it's
a
function
and
then
cause
a
hardener
that
recursively
drops
the
the
objects
that
it
finds,
but
the
function
that
defines
so
purifying
hardener
I
took
as
this
PR
that
I
submitted
to
the
make
hardener
repository.
C
Essentially,
they
make
hardener
a
gwark
make
hardener
known
module,
allows
you
to
create
a
hardener
from
a
given
set
of
roots
fringe
objects.
Initial,
so
make
harden
that
I
have
here
is
actually
just
one.
That's
been
curry
against
the
initial
fringe
and
takes
a
second
argument
as
freeze
argument
to
say
this
is
the
object.
Freeze,
we're
going
to
be
using
and
if
it's
not
specified
default
object,
freeze,
Wow,
okay,
okay,
so
I
make
a
purifying
hardener.
That
says.
The
freeze
that
I've
tried
to
do
is
I.
C
Okay,
so
it
just
as
a
best
effort
at
this.
If
it's
in
the
in
the
realm
of
strange
proxies
or
already
frozen
objects,
it
won't
be
able
to
do
its
job,
but
if
jesse
has
neither
of
those,
this
will
work
quite
well.
So
it
will
just
simply
go
through
the
object,
keys
and
say
we
took
the
keys
in
the
argument
set
the
key
to
a
may
be
wrapped
function
of
that
key
and.
C
C
A
A
A
A
A
E
So
I
had
just
a
couple
of
things.
First
I
was
wondering
what
people
would
think
of
using
the
first
30
minutes
of
the
Tuesday
calls
as
kind
of
a
business
time,
so
there
might
be
particular
decisions
that
need
to
be
made
news
announcements
that
sort
of
thing
so
we'd
kind
of
separate
out
like
the
deep
dives
from
the
items
that
need
everyone's
attention.
E
So
I
wanted
to
get
thoughts
on
that
and
I
was
thinking.
If
we
really
wanted
to
get
into
it,
we
could
have
a
Google
Doc
for
each
meeting.
That
would
have
the
business
items
that
need
to
be
decided
on,
so
that
if
people
aren't
able
to
make
that
particular
time,
for
whatever
reason
they
can
still,
you
know,
approve
or
disapprove
offline.
A
Yeah
and
one
example
of
something
that
we
need
some
decision-making
feedback
on
is
right.
Now
the
shim
is
inside
the
proposal.
Realm
repository,
we
got
some
good
feedback,
particularly
from
Richard.
Thank
you,
Richard
that
the
best
practice
is
to
take
take
things
like
the
shim
and
the
tests
for
the
shim
and
move
them
out
into
a
separate
repository.
A
D
Sorry
could
I
also
bring
one
point
that
is
related
to
those
two
I
I.
Think
from
my
work
with
the
modules
group,
it
has
been
very
very
helpful
to
have
this
repository.
That
is
like
really
not
code
related,
it's
organization
related
and
its
projects.
We
have
project
boards,
we're
just
using
the
github
tools,
we're
familiar
with
to
organize
our
process
in
general
and
on
that
topic
the
one
recommendation
I
made
early
on
when
I
joined
is
to
have
a
terminology
document.
D
We
didn't
do
a
good
job
at
that
one,
but
the
whole
idea
was
I
was
trying
to
catch
up
on
concepts
that
I
missed,
because
you
know
these
meetings,
people
join
leave
and
come
back
and
everything
so
so
that
that's
one
example
of
a
document
that
could
live
in
this
repository.
So
there's
a
document
about
business
aspects.
You
know
in
various
documents,
but
there's
also
knowledge
documents
for
people
who
are
looking
to
catch
up
on
certain
things
and
that's
a
little
different
than
a
forum
where
these
are
our
documents.
D
Like
I'll,
be
honest,
I
didn't
do
a
good
job
doing
my
homework.
You
guys
had
that
document
from
like
I've
seen
it.
Maybe
the
first
meeting
and
I
read
through
it
I
printed
it
about
seven
times,
I
never
finished
reading
it,
though
so
so.
But
but
that's
me,
that's
my
style
of
actually
going
about
reading
things
when
that's
like
the
worst
skill
I
have,
but
the
terminology
document
and
node,
at
least
for
the
two
three
definitions
that
we
got
ourselves
to
work
on
really
helped
at
that
point.
D
So
so
the
Google
Docs
are
kind
of
like
work
works
in
progress
of
a
particular
topic.
There
are
productions
that
you
would
get
out
of
collaboration,
but
I
think
if
we're
moving
towards
this
being
a
project
having
a
repo
where
project
business
is
in
that
repo
and
things
that
happen
because
of
the
project
are,
are
you
know,
auxilary
things
and
the
right
format
and
the
right
medium
that
that
would
be
more
structured
for
newcomers,
at
least
and
and
I'm
pretty
sure
we,
you
know
we
would
all
benefit
from
it,
but
it
does
take
effort.
B
Actually
gonna
say
the
opposite:
I
think
the
Google
Doc
one
Google
Doc
would
be
good
and
I
I
wants
it.
So
for
the
terminology
we
could
potentially
start
the
Google
Doc
like
put
something
at
the
very
bottom
of
the
Google
Doc,
have
a
bookmark
to
it
and
then
send
new
people
to
that
specific
bookmark
and
then
in
the
Google
Doc.
B
We
could
have
kind
of
a
log
for
every
single
meeting,
including
maybe
not
only
the
administrative
stuff,
but
also
maybe
a
summary,
or
at
least
a
bullet
point
about
what
was
discussed
in
this
meeting,
and
we
could
also
include
say
if
there
was
a
recording
of
that,
we
could
include
a
youtube
link
in
the
same
document
and
that
way
we
could
we're.
Gonna
have
a
log
of
all
the
meetings.
D
Yeah,
they
definitely
have
separate
advantages.
I
guess,
I
didn't
I,
wasn't
part
of
making
the
decision
when
node
decided
to
go
that
direction,
but
I
did
find
that
when,
when,
when
we
are
lost
in
the
threads
having
this
central
repo
opening
an
issue
and
saying
like
wait,
a
second,
where
is
everybody
actually
busy
act
right
now?
E
Yeah
I
can
definitely
see
the
benefit
of
having
a
PR
process
so
that
you
know
people
don't
people
are
ok,
making
changes
and
submitting
them
without
feeling
like
they're
over
writing
other
people's
changes.
You
know
that
there's
a
clear
process
for
adding
things.
I
could
also
see
that
being
a
barrier,
people
aren't
as
comfortable
with
you
know
it's
it's
much
easier
just
to
type
in
Google
Docs
than
it
is
to
submit
a
PR
board.
You
know
if
that's
not
what
people
are
comfortable
with,
but
that
was.
D
Me
by
the
way,
because
the
first
PR
I
did
was
like
literally
on
my
terminology,
so
I
write
code
that
I
think
other
people
are
using
I.
Just
my
process
has
lived
far
away
from
github
other
than
it
being
the
place
where,
if
my
time
machine
breaks
it
son
github.
Basically
so
so,
I
learned
a
lot
about
PRS
for
working
on
markdown
funds,
which
was
like
weird
and
then
I
I
did
some
PR
work
on
code,
two
which
was
new,
but
but
you
know
if
we
are
predominantly
comfortable
with
working
on
PR
style.
D
A
A
If
you
can
comment,
then
you
can
read
the
document
in
a
suggesting
mode
where
you
can
actually
take
the
user
interface
ax.
There
would
normally
be
edits,
but
then
those
become
like
comments
as
edit
suggestions
with
that
somebody
with
commit
rights
can
accept
or
reject,
and
then
any
of
us
as
committers
would
be
able
to
either
accept
or
reject
those
or
make
revisions
directly.
D
So
I
think
it's
it's
good
to
frame
it
as
people
should
try
their
best
to
be
available
Tuesdays
the
first
half
an
hour,
even
if
they
are
busy.
You
know
try
to
make
sure
that
this
time
slot
is
available
for
for
business
related
discussions
that
might
take
place
if
they,
if
they
are,
you
know
going
to
take
place
this
week.
D
D
People
who
want
to
who
have
like
two
or
three
people
who
are
you
know
very
closely
related
in
a
discussion
that
is
maybe
out
of
the
context
of
the
two-hour
meeting,
also
have
the
ability
to
at
any
time
if
they
would
like
to
schedule
a
separate
time
or
a
you
know,
follow-up
after
the
meeting
they
could
have
a
breakout
room
where
they
can
do
that
discussion
and
we
can
have
more
than
one
discussion
happening
in
those
separate
breakout
rooms.
I
haven't
done
it
before,
but
it's
a
feature
in
zoom.
D
E
D
There's
a
Jas
org
where
you
basically
just
go
to
this
repo
and
add
a
sub
domain
name,
and
they
will
host
your
get
up
pages
and
domain
that
Jas
org
I,
don't
know
how
popular
that
would
be
I,
don't
know
what
the
motivations
of
the
people
behind
it
are,
but
it's
powered
by
CloudFlare
for
a
CDN,
and
it
seems
like
it's
a
very,
very
organic
way
to
get
a
nice
subdomain
before
somebody
else
does
I,
don't
know
what
they
have
with
this
peds
process.
A
D
You
just
do
a
PR
against
to
her.
There's
subdomains
and
you're
like
okay,
might
take
24
hours
and
takes
like
24
seconds
really,
but
so.
B
Cool
yeah,
the
document
management
from
now
on
so
before
it
was
a
Google
Doc
and
so
I,
for
example,
I
could
edit
it
now
so
in
the
document,
especially
the
one
in
the
guard
gone
well,
it's
a
copy
from
the
Google,
Docs
and
I
think
there
are
quite
a
few
to
deuce
left
right.
Yeah.
There
are
roses
now
so.
E
A
A
Safe
modules
document
gives
it
yeah
yeah
it
does
that
not
so.