►
From YouTube: Programmieren in Rust (21.11.): Module und use
Description
Vorlesung „Programmieren in Rust“ an der Universität Osnabrück im Wintersemester 2016/17.
Dies ist die Aufnahme des Beamerbildes sowie des Notebook-Mikrofons. Alternative Aufnahme (mit Dozentenvideo): https://video4.virtuos.uos.de/engage/theodul/ui/core.html?id=96da9ffc-91eb-4d90-b89b-11696580e084
Slides und weitere Informationen: https://github.com/LukasKalbertodt/programmieren-in-rust
Playlist: https://www.youtube.com/playlist?list=PL0Ur-09iGhpwMbNiVTBeHmIjs0GuIXhNg
A
C
A
We
will
move
forward
today,
or
we
will
first
of
all
this
week
we
will
discuss
the
module
system
from
us.
That
is
our
plan
for
the
whole
week
before
we
start
with
that,
we
will
first
discuss
the
astag
last
time.
He
spoke
because
it
turned
out
to
be,
but
a
bit
more
difficult,,
especially
the
sea,
was
more
difficult
than
we
expected.
There
will
be
if
you
look
a
little
bit
and
step
by
step
through
greed
or
so
that
you.
A
D
A
That
stays
the
same,
so
I
think
the
beginning
will
start
with
the
simpler
task,,
namely
that
on
task
1,
where
you
had
to
improve
it,,
namely
this
program.
That
is
still
the
ugly
thing,
and
I
'll
just
start
a
few
things
to
improve.
We
won't
do
it
all
the
time.
That
would
be
too
many
things
we
would
have
to
improve
right
now.
A
It's
also
possible
at
the
back,
for
everyone
make
one
thing
safe,
so
you
don't
even
know
where
to
start.
So
there
are
so
many
things
as
the
very
first
of
many.
You
might
notice
that
this
is
this
super
long
ray,
but
we
do
n't
start
at
the
top
step
by
step.
So
we
don't
miss
anything.
So
this
description
isn't
particularly
good,
but
if
it's
supposed
to
be
a
documentation
of
maine,
it
should
definitely
be
with
three
sessions
listed
as
The
next
thing.
A
That
strikes
you
is
that
this
return
value
of
9
is
given
here,,
but
that's
a
long
way,,
so
you
can
always
omit
it,,
so
we
never
want
to
state
this
far
return.
Value.
You're
welcome
to
interrupt
me.
If
you
have
a
question
about
anything,
the
next.
This
year's
situation
numbers
so
for
the
first
time
is
not
a
particularly
good
name,
but
if
you
don't
even
bother
with
us,
we
at
least
want
to
write
it
into
the
net
case.
So
we'll
do
it
like
this.
A
If,
then,
don't
write
together
but
nice
snake
ace,
then
this
thing
here
with
the
ray
will
still
come
up
on.
These
are
the
numbers
from
1
to
20.
We
can
of
course
write
the
numbers
from
1
to
20,
simply
by
running
take
here
once
up
to
21
exclusive.
Then
we
don't
have
that
problem.
Then
we
also
don't
have
the
problem
that
the
situation
on
the
building
a
as
a
reference
and
also
show
that
if
the
reina
is
here,
then
this
iteration
number
would
be
a
reference
to
one
who
gets
32
to
get
this
reference
change.
A
C
A
A
But
since
we
want
to
get
rid
of
this
series,
we
don’t
have
the
problem
at
all.
Then
it
becomes
apparent
here
that
it
’s
extremely
stupid
that
there
is
a
teacher
in
the
block
and
this
condition
helps
so
is
governed.
You
can,
of
course,
just
take
it
and
then
write
everything
downtown
in
elz
blog
and
even
if
you
would
of
course,
format
it
like
this,
but
put
the
nice
thing
in
a
new
line,
but
as
I
said,
it
makes
no
sense
at
all.
So
let’s
do
it.
So
we
have
these
two
functions.
A
Yes,
so
exactly,
how
do
I
write
in
a
statement?
We
see
it
just
do
it
like
this?
Is
that
still
print
hear
his
yes?
What
mistakes
should
have
made?
That
should
be
right?
Okay,
now,
here
after
selected
about
a
few
things
over
it
happy
price,
a
very
good
name
or
the
happy
prime
would
be
even
better,
but
we
have
such
the
jackass
number
is
happy.
They
are
very
long
at
first
and
if
you
have
any
functions,
the
1
car
return,
then
you
usually
want
to
start
with
a
question
and
not
something
like
that.
A
A
I
won't
go
into
detail
now,
but
you
might
notice
you
can
actually
omit
this
station
everywhere.
We
want
to
have
at
most.
I
can't
resist
making
it
nicer
because
it
looks
a
bit
very,
very
ugly.
Some
you've
already
noticed
that
this
function
doesn't
quite
work,.
For
example,
this
one
doesn't
work
for
two.
Of
course
there
is
a
prime
number,
but
that's
not
what
it
was
about.
A
And
here
again,
a
lot
of
dough
leads
to
the
station
that
you
can
omit.
Yes,
I
think
that's
about
the
same
the
x
or
does
anyone
here
have
a
question
about
it?
Ok,
then,
let's
do
the
climb
now,
so
there
were
three
sub-tasks
and
the
great
shots,
a
and
b
that
we
think
you
should
be
able
to
manage,
but
then
the
cs,
but
it
turned
out
to
be
much
more
difficult
that
we
had
imagined.
So
I
programmed
the
sample
solution
before
I
set
the
task.
I
thought
about
the
c
that
could
be
difficult.
A
You
have
now
needed
some
time
for
it,
but
than
mine
already
that
again
did
the
math
and
took
some
time
to
do
it
for
a
long
time.
That
was
maybe
a
bit
too
much,.
The
funny
thing
is
that,
from
most
of
the
participants,,
the
difficult
part
was
not
the
rest
area,
but
the
algorithmic
part,,
but
we’ll
talk
about
that
in
a
moment,
let’s
start
slowly,
who
read
through
all
of
this
for
you.
A
That
means
I
won't
explain
in
detail,
but
the
first
step
is
this
docking
station,
where
we
want
to
subdivide
a
string
of
tokens
that
comes
in
so
in
a
list
of
tokens.
I
have
now
made
an
example
of
which
tokens
there
are,
for
example,
and
jan.
We
already
somehow
recognize
several
types
of
tokens.
How
would
we
represent
these
tokens?
Now?
Yes,
exactly.
A
A
Is
one
in
amman,
and
that
is
something
that
some
of
you
did
n't
use
when
you
handed
them
in,
so
you
haven't
gotten
behind
that.
Yet
how
best
to
use
imams
and
that
takes
a
while-
you
don't
actually
scan
him
from
other
languages
,
that's
why
you
need
a
bit
of
time
to
get
used
to
it,
but
now
for
a
case
like
this
you're,
quite
right,
that
would
be
a
try.
First,
that's
now
here
is
not
the
sample
solution,
but
actually
the
task.
We
will
start
programming,
but
I
will
not
pre-program
everything.
A
Do
n't
worry,
because
the
first
step
is
now
to
create
this.
For
you
they
are
types.
Yes,
exactly
these
types
for
the
dead.
That
means
we
agreed
on
one,
because
these
types
can
take
on
different
types,
has
different
possibilities
that
one
of
the
dead
now
have
the
possibilities.
So
I
wrote
a
few
examples
at
the
beginning.
A
That
involved
their
actions
already
recognizable,
plus
and
minus.
We
can
have
as
tokens
and
where
the
open
and
close
the
clip
we
then
just
mine
and
above
can,
that
is
an
abbreviation
for
for
endless,
and
so
that
is
is
often
used.
At
least
once
will
be
woman
and
14,
namely
this
number.
That
would
just
said.
Can
it
any
bahrain
Come
on
I
mean
we
can
now
say
somehow
office
and
so
on.
Of
course.
Nobody
wants
to
do.
That.
We
know
that
we
can
hang
around
in
rost
data.
Then
individual
variance
of
these
imams.
A
That's
why
just
say
in
numbers
and
do
now
pay
practice
numbers
type
in.
We
know
that
we
only
want
to
read
positive
numbers,
so
it
would
be
best
to
put
a
u
64
in
it
but
later
in
the
calculation.
Negative
numbers
can
of
course,
also
arise
so
it’s
just
as
good
to
do.
64
1,
that’s
okay,
both
so
32,
who
might
also
be
in
okay,
but
we
actually
always
want
to
take
as
much
as
possible
as
long
as
we
do.
A
N't
have
a
good
reason
to
do
without
storage
space,
so
to
limit
our
storage
space
consumption.
A
bit-
and
we
never
actually
did
that
so,
first
of
all
the
biggest
thing
next
to
what
is
easy
to
use,
and
then
you
should
write
this
function
tokens-
and
this
has
also
become
quite
long
for
some
of
you,
and
we
also
need
a
bit
of
understanding
again
so
that
you
get
the
time
to
understand
that
you
can
actually
write
it
reasonably
briefly.
I
would
at
least
call
up
the
minimum
requirement
here.
A
B
A
E
E
A
Only
wanting
to
read
this
string:
don't
change
it,
so
one
in
youtube
definitely
reached
and
now
he's
learned.
We
don't
do
that,
but
if
we
want
to
have
one
in
the
youtube
stream
assume
in
the
lowercase
string
and
am
of
course
so
that
you
want,
we
can
also
input
it.
You
should
return
it,
maybe
just
more
appropriate.
Yes,
a
tokens
editor,
so
just
a
token
list.
A
We
will
change
that
in
a
moment,
as
probably
most
of
you
have
noticed
and
like
me
would
just
start
now,
is
the
position
is
a
lecturer
for
teachers
don't
blow
out
cheers,
because
I
want
to
push
things
in
afterwards
and
now
I
go
through
this
string
letter
by
letter
and
always
decide
what
I
want
to
do
with
each
letter.
So
I
go
into
each
letter
of
this
chances
on
the
net
often
used
this
character,
literature
method.
Now
I
go
over
each
character
and
how
can
I
now
best
decide
based
on
the
body.
A
C
A
B
B
B
A
Know
exactly
the
definition
of
these
unicode
classes,
because
we
have
to
query
many
classes
here,
it's
so
little
for
me.
Signs
actually
have
a
very
good
approach
of
really
querying
signs
explicitly
that
we
want,
and
these
are
also
print
watermarks.
That
means
there
are
no
controls,
any
limits
or
anything
else,,
the
one
completely
normal
print
trademark
and
so
on.
As
soon
as
you
somehow
have
three
blocks,
so
ffl
and
11,
you
can
think
twice
about
whether
you
would
like
to
have
a
match,,
but
you
can
still
ask
a
match
about
the
conditions
of
the
Abitur.
A
How
how
is
it
going
again
if
I
have
a
killer
now,
an
arm?
That's
ok,
maybe
not
everything
hasn't
been
seen
yet
have.
But
when
I
have
his
character,
I
can
call
on
it
is
white
space.
They
said
now,
if
this
character
is
a
character
according
to
the
younicos
standard,
there
are
a
lot
of
white
space
characters.
C
A
A
This
the
character
that
we
stuff
here
into
the
match.
He
is
now
bound
to
this
name
number.
In
this
case.
You
can
of
course,
also
access
the
c
in
this
way,
because
his
capital
again
think
differently.
If
it
were
a
string,
so
not
a
copy
type,
then
if
we
were
to
enter
the
ownership
of
the
string
when
the
match
you
could
not
use
it
outside
of
the
match
more
than
what
is
in
the
match,
and
then
we
know
that
the
other
names
end
and
we
take
ownership
again,
that's
also
a
coupé
type.
A
Can
we
omit
the
name
reining
here
too
and
just
continue
to
use
it
here,
but
well
it
works
somehow
both
that
's
clear,
but
that
doesn't
matter
the
whole
character.
Is
we
don't
want
to
ignore
dead
fish?
And
now
the
only
thing
missing
is
the
name.
If
I
was
remember
correctly-
and
now
we
have
to
ask
one
more
question
in
the
morning
about
the.
F
A
C
A
Any
sense
but
really
clear
it
works
both
are
now
but
to
the
other.
That's
then,
maybe
it's
better,
and
then
you
should
say
when
the
cell
phone
chips
you
hand
over
the
base
of
the
number
you
would
like
to
test.
So
if
we
hand
over
ten,
we
can
remove
digits
this
time
and
yes,
it
works
just
like
you,.
Otherwise
it
worked,
but
even
if
you
write
it
like
that,
we
have
these
rangers.
A
E
A
B
A
That
is
a
perfect
case
where
you
can
offer,
because
if
the
other
empire
fails
that
a
programming
error
that
would
not
be
so
with
me,
can
we
deal
with
if
we
ask
here
whether
that
is
a
digit
and
the
one
below
and
still
the
ears
fly,
then
it's
some
kind
of
programming
error
on
our
part.
So
that's
a
real
case
where
you
can
rap,
then
you
also
notice
that
a
u
32
comes
back.
A
C
C
A
We
want
to
give
something
back
and
now
I've
already
noticed,
we
we're
noticing
that
an
error
can
occur
in
our
function
right
now.
We
want
to
panic
nope.
Actually
we
expect
this
error
to
occur
from
time
to
time,
so
we
have
to
negotiate
it
somehow
better.
We
want
to
deal
with
it
directly
in
the
function
nope.
So
we
want
yes,
not
here
from
the
user,
read
in
again
and
tell
a
user
that
something
went
wrong.
That
is,
this
function
is
so
we
just
called
it
directly
from
the
set,
but
this
function
is
too
deep.
A
Here
we
don't
want
any
user
interaction,
so
we
can
fix
the
error,
don't
treat
it
directly.
I
could,
of
course,
just
ignore
all
the
characters
that
don't
suit
us,
but
that's
again,
a
bad
tactic
to
simply
ignore
errors.
So
the
third
option
we
have
is
that
we
pass
the
error
further
up
and
to
do
that,
we
have
to
change
this
return.
Part
that
we
already
saw
that
last
time.
So,
let's
pack
it
in
and
here
comes
a
second
parameter,
and
now
we
have
to
think
about
which
error
type
we
use
best.
B
A
B
D
A
The
second
possibility
to
say
there
is
only
one
error
type
that
is
correct.
Then
you
could
take
the
option,
but
if
you
are
very
precise
considered,
there
can
be
two
types
of
error.
If
we
use
a
64
here
and
if
we
later
have
this
pasing
of
numbers
with
several
digits,,
this
can
also
be
rewarded.
The
number
that
the
user
enters
can
be
as
large
as
64
is,
of
course,
a
very
special
error
right
now,
but
that
could
be
a
mistake,.
A
A
Exactly
that
now,
just
another
reason
you
wanted
to
say
more
than
it
did
n't
work.
We
can
say,
for
example,,
which
character
is
the
illegal
character.
Now
there
are
a
lot
of
options
here,
and
if
you
have
this
character,
you
can
reconsider.
I
would
like
to
now
so
I
could
write
in
here
immediately.
If
I
say
there
is
only
this
one
mistake
that
the
character
indicates
that
there
is
an
invalid
character
in
there.
If
I
say
I
could
also
get
a
car.
I
would
like
to
deal
with
that
too.
A
A
So
what
do
we
do
here?
So
other
errors
case?
Ih
terror,
or
do
we
pass
the
character
c?
Should
the
return,
and
in
the
ok
case
then
then
this
loop
ran
through
and
this
vector
was
filled
one
after
the
other
will
be
ok
back
and
date
is
ours
on
the
project
and
let's
see
about
it
first,
ok,
then
I'll
stop
with
the
life
coaching.
A
A
A
You
have,
I
don't
think
you
mean
matching
something,
but
you
mean
that
this
match
gives
something
back
or
if
you
say,
a
match,
something
with
people,
the
notes
character
but
happy
to
continue.
Yes,
so
they
give
different
things
back.
So
the
two
things
that
we
notice,
the
different
things
that
give
back
are
the
two
here
once
white
space
and
if
he
knows
what
give
this
matchup
mezzaroma
then
lead
back
types
price
question.
First,.
E
C
A
Was
this
bottom
is
exactly
like
that?
Will
the
spot
is
not
a
problem,
because
that
is
not
a
problem
are
theoretically
proven,
also
very
funny
way
that
it
is
okay,
but
we
can
think
about
so
much.
If
this
one
already
returned,
then
will
he
never
get
out
of
the
match?
That
means
it's
okay,
but
this
is
white
space.
We
still
have
to
act.
A
A
Fun
for
me,
we
'll
take
a
look
at
it
because
the
solution,
angela
quickly
over
it
fx
mayr,
actually,
if
we
completely
processed
it
with
the
lessing.
If
I
did
n't
sign
up
for
the
tour,
oh
exactly,
and
then
there
was
the
matter
of
how
to
get
several
longer
numbers.
Long
ago
I
created
a
string
that
is
always
checked
at
the
beginning.
If
it
is
empty
and
then
checked
whether
we
didn't
have
to
push
something
on
it
and
anything
else,
that's
a
bit
cheaper
than
what
he
just
programmed.
A
A
A
You
can
program
it
pretty
directly
from
this
code
that
you
have
pre-programmed
before
this
one,
and
you
have
two
options:
either
had
a
leaf
on
this
tree.
That
is
directly
on
a
number
that
not
only
has
to
be
calculated
out,
but
is
already
a
number
directly
have
shown
that
or
I
have
an
inner
node.
That
represents
an
operation.
One
in
noten
still
has
children
who
somehow
still
have
to
be
ordered
for
so
not
directly
a
number,
and
for
this
we
now
have
an
opera,
an
operation.
A
So
either
that
is
a
deterrent,
and
then
we
have
it
whole
children
where
we
just
have
to
take
the
path
first,.
Even
if
we
still
need
two
children,,
then
let's
jump
to
the
world
for
a
moment,
I
hope
that
everyone
has
managed
to
do
it.
Somehow,
here
too,.
We
have
to
get
down
to
eleven
people
first,
because
yes,.
Somehow,
if
we
are
a
leaf,
then
parents
want
to
return
the
value
because
we
are
already
done.
A
E
A
Put
a
sign
at
the
point
1
and
that's
enough,
then
the
whole
world
should
function
or
right
here,
I
have
to
go
after
this
I
just
overlooked
these
signs.
If
we
look
at
them
again,
they
are
now
also
of
the
expression
type,
which
means
that
a
repressive
data
structure.
They
must,
of
course,
also
be
evaluated
beforehand,.
Otherwise
we
cannot
do
anything
with
them,
so
we
still
have
to
call
the
eight
on
the
two
children.
As
far
as
clear.
A
A
A
A
A
Then
the
only
thing
missing
now,
as
far
as
I
can
remember,
is
this
pass
function.
The
c
I
think
that
was
really
the
most
difficult
thing
and
it
took
me
a
little
while
to
do
it.
I
wrote
that
down
reasonably
well.
First
of
all,
we
get
a
bar
token.
We
don't
need
the
vector,
we
only
want
to
read
these
dead
ones.
That
means
my
slice
and
one
comes
back
alt
with
self,
because
we
ourselves
are
giving
the
tree
back
and
a
few
terrors
when
parsing.
Now,
several
more
different
errors
can
occur.
A
I
have
created
an
imam
again
for
this
and
there
are
different
possibilities.
For
example,
the
input
stringer
is
completely
empty.
That
is
wrong
or
I
wasn't
expecting
a
dead
person
and
I
saved
the
dead
person
again.
Didn't
expect
it
and
a
few
other
errors,
then
I'll
start
by
defining
two
helper
functions
in
this
pass
function
for
the
first
time,,
that's
a
fine
closing
by
an
which
searches,
a
token
slice
for
the
closing
bracket,
and
you
start
with
a
start
on
set.
A
So
there
you
go
just
look
through
and
see
if
the
following
bracket
finds
the
right
closing
bracket.
So
you
have
to
keep
your
depth
variable
in
front
of
you,
because
if
another
bracket
opens,
you
have
to,
of
course
find
a
second
one
in
the
depth,
and
now
you
have
to
find
another
closing
bracket
to
get
the
to
find
the
right
ones.
A
E
A
Something
like
that
is
definitely
very
complicated.
It
is
always
underestimated
when
you
think
I
can
do
something
basel.
You
always
underestimate
that
you
actually
have
to
write
who
of
you
heard
informatik
de
or
at
least
computational
linguistics.
Okay,
we
only
heard
info.de
at
least
a
few
very
nice.
A
You
probably
all
know
terms
like
regular
computer
scientists
or
languages
and
context-sensitive,
or
such
a
look
at
different
categories
of
grammar,
and
that's
funny
that
you
think
oh
there
kind
of
get
such
a
big
notation
out
now,
but
it
doesn't
really
tell
us
what
about
the
real
world.
The
problem
is
why
this
leak
in
is
so
easy
and
it's
difficult.
The
leak
is
a
regular
language.
Waxing
needs
to
do
it
again
going
through
from
front
to
back.
A
That
is
a
regular
language
that
you
could
also
use
a
rex,
germanen
info.de
nice
proved
that
everything
is
equivalent.
You
could
also
complete
with
a
rack
expert
jackson
to
pasing
is
mostly
a
pure
another
higher
category,
somehow
a
deterministic
context,
free
language
at
least
that's
how
most
programming
languages
are
we're
getting
away
from
the
load
a
bit.
E
A
Yes,
the
one
idea
how
to
prove
very
simply
that
our
our
grammar,
which
we
want
to
fit
here,
is
not
regular.
There
is
regression.
Yes,
why
is
there
this
revision
in
brackets,
exactly
we
ca,
n't
find
matching
brackets
in
a
regular
language,
so
we
can't
express
brackets
that
are
listed
arbitrarily
deep,
regular
languages.
have
okay,
but
let's
come
back.
That's
why
it's
definitely
difficult.
We
can
maybe
now
show
you
how
difficult
it
is
to
write
a
complete
one.
The
raser
and
lexa
were
also
written
by
hand.
A
There
are
tools
for
quite
a
lot
of
those
baaser
or
compiler
generators
or
compilers
compiler,
but
you
can
often
use
that
kind
of
thing,
but
not
always
that
you
can
use
it
as
information
on
the
side.
I
think
this
passcode,
if
you
wanted
to
watch
it
best
at
home,
then
you
wo
n't,
understand
it
so
quickly.
Now
ask
about
the
task.
Ok,
so
don't
worry.
If
you
do
n't
have
this
parser
correctly
or
not
that
complete,
then
it's
not
that
bad,
but
the
first
ones.
We
would
expect
that
you
somehow
managed
to
do
it.
A
C
E
A
Wednesday
and
how
we
can
structure
our
projects
a
bit
better.
I
think
we
noticed
at
hofmann
in
particular
that
the
file
has
become
very
large
quite
quickly.
We
don't
want
to
always
writing
everything
in
one
file
that
's
not
a
good
idea.
That's
why
you'll
learn
these
three
terms
slowly
this
week,
we'll
start
with
two
needs,
one
with
the
term
great.
A
creative
rast
is
a
so-called
compilation
unit.
A
It
means
it's
a
part
what
the
compiler
processes
at
once
in
one
fell
swoop
in
c++
or
let
's
say
you
start
with
c++
in
c++
last,
so
that
a
cpb
file
is
a
compilation
unit
and
each
cpp
file
becomes
a
dot
because
it
divides
its
object
arrow
in
the
year,
which
is
similar
there.
We
do
the
dots
but
files,
and
that
also
every
year,
our
own
compilation
unit
and
from
that
with
a
dot
of
glass
files.
It
's
a
pope
that
makes
the
compiler
and
in
ras
there's
a
whole
craig.
A
That's
just
the
hopst,
the
compiler,
with
once
refreshed
and
his
kate,
there
is
a
modular
construction.
We
will
see
examples
in
a
moment
that
is
first
needs
this
project
there,
and
there
are
two
types
of
cancer
that
are
relevant
for
us
first
of
all,,
namely
the
legs
are
ridge,
racers
that
we
can
run
later
that
point
to
an
excel
file
under
windows,
so
combine
it
into
an
executable
and
there's
the
library
trades
which
at
one
point
complete
experienced.
A
These
are
new
prizes
that
you
can
send
to
friends,
so
they
can
use
the
functionality
that
we've
written
before
are
so
the
mainly
tracy
fans
can
be
interesting,
and
often
you
remember
that
after
craig
has
one
project
per
project,,
if
he
somehow
writes
a
smaller
game
or
somehow
has
another
project,
then
you
probably
have
a
create
later.
If
you
have
very,
very
large
projects,,
it
makes
sense
to
split
it
up
into
several
cranes,
but
we
will
actually
be
working
with
a
kate
the
whole
time
here.
A
You
will
always
be
on
a
craig,
so
you
have
to
do
with
building
a
module.
What
is
now
a
module
module
mast
is
called
a
roughly
a
name
area
for
all
symbols,
I.e.
for
function,
types
and
honestly,
and
these
modules
have
the
advantage
that
it
can
be
split
over
several
files.
So,
finally,
something
where
we
split
the
files,
everything
we've
done
so
far,
then
a
module
even
after
the
roots
modules
of
the
tree.
That's
why
he
didn't
expect
anything
about
it.
Until
now,
you
have
a
module
and
had
nothing
to
do
with
modules.
A
A
A
If
we
now
want
to
create
a
new
module,,
we
do
it
now
with
the
keyword,
mod
that
comes
after
it
bracket
the
name
and
then
business
and
the
new
module
starts
in
there.
You
now
know
how
to
create
a
new
module,,
which
means
you
can
write
things
in,,
for
example,
functions
that
are
not
then
also
drawn
in
the
tree,,
so
they
are
defined
in
the
module.
A
A
A
E
A
A
Is
important
that
each
symbol
is
a
complete
So,
every
symbol
of
the
complete
father
has
a
path
that
can
be
addressed
exactly
and
we
can
present
you
with
the
analogy
as
if
you
had
a
file
system
in
the
unix
such
as
are
under
linux
and
also
want
to
define
father
here.
We
then
have
colon
colon
city
this
/
in
the
next
days.
If
you
then
use
another
function,
that
would
be
too
easy.
Now,
let's
pretend
he's
in
this
function
down
there.
A
A
We
would
see
that
in
a
moment,
but
there
is
something
better
how
you
can
go
directly
from
the
root
in
unix
and
say.
I
would
like
to
state
this
conclusion
from
a
root,.
For
example,
if
you
give
cd
and
a
parties,
is
that
also
always
listed
relative
to
the
current
one?
What
if
you
specify
the
path,
the
bcg
absolutely
from
brussels
directory,
specify
volt.
A
Leading
/
in
unix,
and
we
also
have
a
leading
special
guest
thermal
leading
colon,
but
you
can
also
write
it
at
the
very
beginning
and
to
say
I
would
like
to
start
from
the
largest
module
and
then
you
can
also
define
all
the
paths
like
this
if
you
want,
but
you
can
also
use
super
it
super
here.
That
corresponds
to
the
point
point
in
unix
driving.
A
A
Can
write
great
several
times
in
a
row
but
still
beginning
of
the
path,
so
we
know.
Theoretically,
all
paths
could
be
addressed
again,
but
of
course
that's
a
bit
annoying,
that's
why
we
want
to
create
a
shortcut
somehow,
and
we
can
do
that
with
the
keyword
use.
So
we
can
build
the
normal
directory
again
and
we've
got
it
right
now
in
a
mail
function
and
if
we
call
it
twice,
we
have
to
write
the
trips
mentioned
twice.
A
C
A
Writes
outside
of
functions,
you
can
also
write
in
functions
so
other
functions
or
any
definitions
of
types
also
loosely
look
at
instructions,
but
what
was
different,,
for
example,
these
two
work
and
what
we
both
want
to
call
now
somehow
directly.
We
can,
of
course,
now
write
two
us
instructions
where
we
can
do
them
a
bit
better,
although
we
can
do
it
that
way,
and
we
can
write
it
as
the
last
element
of
such
a
path
in
the
user
instruction
so
difficult
make
it
clear
and
several
things,
then
you
can
write
one
after
the
other.
C
A
You
can
check
immediately.
What
you
can
do
is
to
write
this
with
an
asterisk,
I.e.
a
wild
card,
and
agree
to
import
everything
that
too,
that
you
usually
want
to
avoid
as
long
as
it
is
still
halfway
down
yourself.
So
there
is
56
function
is
not
a
problem.
You
should
rather
list
them.
If
it
is
significantly
more,
you
can
also
use
the
asterisk,
but
if
possible,
avoid
why
an
idea
why
that
might
make
sense
to
behave
these
strengths.
B
A
It
is
definitely
not
a
computational
effort
at
the
runtime
of
the
program,
but
if
you
only
for
the
compiler,
it
could
be
that
it
will
be
a
bit
more
difficult,
probably,
but
not
there
is
already
registered.
Your
first
point
was:
has
you
can
see
immediately?
What's
going
on
together?
Has
that
at
the
beginning,
it's
kind
of
like
something.
A
We
somehow
import
all
the
functions
from
a
module,
then
it
may
well
be
that
we
also
get
functions
that
we
have
already
defined
here,.
So
we
convey
our
name
area,
so
there
are
other
things
even
more
arguments
from
the
other
two
messages.
Just
actually
so
the
argument
what
I
would
emphasize
the
most
is
that
you
finally
know
what's
going
on
with
what
you
said,
but
rather,
if
you
let
coup
later
after
the
function,
you
see
that
a
type
or
a
function
you
want
to
know.
Where
is
it?
Is
then
defined,?
A
So
you
somehow
look
for
the
name
of
this
function
in
a
whole
file
and
either
define
it
yourself
directly
in
a
module
or
define
it
somewhere
else,
and
then
you
want
it
to
be
in
youz,
then
you
know
directly,
but
it
was
imported
from
it
now.
You
don't
know
it,
but
good.
So
far,
so
good
here
again
briefly
in
the
accent
of
you
just
have
to
write
simple
hughes
arrivals,
where
we
simply
solve.
We
can
specify
several
with
a
list
and
we
can
do
this
wild
card,
although
you
that
should
avoid.
A
A
A
third
slide
according
to
what
the
user
is
concerned,
and
you
can
notice
that
the
journey
is
also
partially
jousted,.
That's
something
that
doesn't
work
in
java,
in
java
command,
deport
the
whole
guard
until
we
get
to
a
class,
and
you
can't
somehow
import
some
of
it
here,
you
can
do
that,,
so
we
can
here
the
whole
colorless
up
to
the
year.
We
can,
but
also
just
up
to
kate
yusen.
We
know,
but
then
prescribe
the
kate
or
we
can
just
always
solve
and
don't
prescribe
forests.
A
A
A
C
B
E
A
That's
just
a
special
syntax
that
we
don't
help
use
the
module.
Sometimes
it
makes
sense.
That's
mainly
good
for
you,
so
you
know
what's
going
on,
if
you
don't
do
that,
so
we'll
take
a
look
at
them.
We
summarize
this
part
that
we
have
already
got
to
know
like
this.
We
know
we
somehow
have
a
tree
and
can
the
badener
access
it.
If
we
access
it
with
views
of
have,
we
will
always
notice
it
absolutely
so
use
father
always
start
from
the
top.
A
We
are
not
relative
of
current
modules
and
the
color
that
you
write
in
the
use
in
functions
or
anything
else.
They
are
always
relative
to
the
current
model
that
the
question:
how
can
you
make
the
absolute
father
relative
that
you
now
notice
watch
out
in
a
hughes
instruction
where
you
actually
absolute
father
but
has
a
relative.
E
A
A
The
whole
time
do
you
actually
write
all
things
that
somehow
have
a
name
in
the
program
code,,
for
example,
functions
and
the
type
or
also
modules?
Okay,
so
far,
it's
clear
to
drive,
because
up
to
now
I
haven't
done
very
much.
The
modules
are
still
in
these
shops
clipped
directly
into
our
source
code.
A
Written
purely,
we
would
have
seen
how
we
store
them
in
files
like
that
and
now,
let's
assume
we
have
this
simple
module
tree,
where
we
just
have
a
root
module
and
a
sub-module
that
would
like
to
have
that
now
not
write
in
the
evening,
but
we
would
like
that
one
second
part
from
water.
There
are
two
possibilities.
A
Once
we
write
in
the
amount
here
after
the
import
and
the
name
where
a
semicolon,
that
means
we
do
n't
enter
the
content
of
the
module,
and
then
we
create
a
new
file
that
is
called
fu
dot
of
it.
So
you
may
notice
that
this
name
fu
and
this
name
shoe-
are
the
same.
They
have
to
be
the
same
or
we
make
the
maine
the
same
way.
A
So
here
we
just
make
a
motto
semicolon
and
then
create
a
file
that
contains
the
same
thing,
but
something
else
named
is
not
in
the
folder
zu
is
called
mod
point.
First
of
all,
the
rules
written
down,
if
you
just
say
madelaine
and
colón
blog
here,
a
module
should
be
created
behind
the
valiant
module,
but
the
content
has
not
yet
been
given
to
me.
So
the
content
is
another
file.
The.
A
A
A
You
can
also
play
around
with
it,
but
normally
you
say
in
the
barnim
odd
name
semicolon
to
outsource
that
to
another
file,
so
that
it
is
clear
again,
but
now
the
real
question
is:
why
do
we
need
it,
and
now
all
algorithms,
of
course
specify
how
to
get
from
a
module
tree
to
the
files
you
need
for
this?
You
first
need
to
get
to
the
root
it
is
usually
stored
in
a
file
that
is
either
called
the
create
that
you
want
to
create,
I.e.
A
A
Now,
let's
go
ahead
for
internal
and
grades
on
this
tree,
as
you
know,
with
the
farmers
in
mind
in
mind-
and
I
could
imagine
having
one
in
some
internal
nodes
that
are
not
leaves
per
internal
node
use
this
variant
with
the
extra
folder
with
life
put
a
folder
in
the
same
directory
with
the
father
and
in
this
folder
park.
With
this
mod
point
rs
that
answers
the
question:
why
should
we
create
a
new
folder
exactly
to
take
care
of
the
children
that
the
children
of
this
module
again
and
per
sheet
of
notes?
A
A
C
A
E
A
E
A
To
do
because
we
remember
who
had
this
sheet
of
notes
at
the
end
before
that
I
would
like
to
expand
it
very
much.
Then
you
say:
okay
I
would
like
to
have
it
under
modules.
That
means
the
host
moved
a
folder
untreated.
Exactly
that's
what
you
do
just
like
that
happens
now,
but
not
so
often
that
you
have
to
move
move.
A
I
want
two
more
files
once
upon
a
time,
the
cat
dot.
He
is
that
again,
a
leaf
in
this
tree.
That
means
it
is
in
the
same
directory
as
the
father,
so
an
angel
directory
and
the
one
there
just
as
little
hint.
You
can,
of
course,
also
have
it
in
an
extra
directory
according
to
knots,
for
example,.
This
is
useful
if
you
know
that
you
want
to
have
modules
later,
so
that
you
don’t
have
to
have
an
unnamed
one
in
the
near
future,,
but
normally
you
want
minutes,.
A
Usually
when
you
record
it
yourself
again,
father
we'll
break
through
to
a
larger
example.
Yes,
you
can
do
a
little
bit
yourself
again,
it's
a
bit
irritating
that's
what
you
have
as
input,
but
I
wanted
to
have
this
algorithm.
First
of
all,
and
tell
you
your
task
and
we'd
like
to
do
that
once
convert
in
files,
we
don't
define
any
function
for
all
these
modules,
but
we
still
want
to
build
up
these.
A
These
modules
structure,
this
module
track
so,
and
I
could
finally
think
about
that
on
paper
or
you
can
just
type
it
out,,
which
might
be
a
bit
difficult,
but
you
can
at
least
start
there.
I'll
give
you
a
few
minutes.
I'll
show
you
this
tree
messi
on
the
blackboard
and
then
go
back
to
the
slide.
So
you've
done.
A
A
A
A
E
A
A
E
E
A
Works
so
we
are
slowly
coming
to
the
end.
Tips
makes
this
module
farmer
system
not
a
bit
confusing
at
the
beginning,
because
you
now
have
news
and
mod
it
first
of
all
think
about
this
module
tree.
That
doesn't
mean
that
you
think
about
it
at
the
very
beginning
of
the
project
and
never
let
it
change
again.
But
I,
say
I
thought
about
this
module
tree
in
my
head
and
put
the
esmig
statically
on
top.
You
can
change
it,,
but
first
you
have
to
think
about
it
and
these
files,,
which
he
then
puts
somewhere,.
A
You
always
bind
them
with
a
mate
declaration,,
which
means
you
don't
automatically
find
them.
Just
because
of
that
lies
you
always
have
to
cancel,
but
in
particular
only
tells
you
once
for
each
module
murder,
not
everywhere,
where
you
want
to
use
it,
but
only
where
it
wanted
to
integrate
so
for
every
module,
a
line,
mod
name
of
this
module
in.
A
Whole
trade
and
in
particular,
I'm
talking
about
the
whole
station
of
tree.
That
means
there
are
no
cycles.
We
build
a
tree
as
a
module,
it's
a
tree
and
you
can't
have
access
and
when
you've
finished,
that
you
can
still
use
all
the
different
functions,
symbols
in
general
from
different
modules.
That
makes
it
one
then
either
by
addressing
the
path,
but
preferably
also
with
use,
so
that
one
does
not
always
have
to
type
things
in
the
same
way,
and
here
it
is
now
make
several
uses
per
symbol.
A
Of
course,
if
I
want
to
use
other
modules
in
a
module,
I
also
have
to
make
millions
again
the
two
modules,
probably
somehow
something
a
year.
That
makes
sense,
in
contrast
to
the
motivation
where
you
need
it
once
per
module,
in
particular,
with
tim
hughes,,
things
are
cyclical
in
front
of
that,.
That
means
I
can
somehow
always
use
things
between
the
modules.
I
just
want
to
build
this
tree
first,
without
filling
it,
and
then
I
can
read
what
I
want
out
of
a
tree
somewhere.
So
I
don't
have
to
somehow
limit
myself.
Even
my
children.
A
Example,
just
that
it
will
be
you
or
mrs
or
liebherr,
but
soon
so
you
have
to
see
how
we
will
compile
it
differently
in
the
near
future
anyway,
because
we
will
get
to
know
a
new
tool.
But
then
there
is
the
last
item
on
the
agenda.
Again.
Is
visibility
between
modules,
data
I've
already
said
more
about
the
fields
of
trucks,
that
they
can
be
public
for
someone,?
You
can't
prevent
them
from
expanding
here.
A
Again,
there
are
these
toppings,
the
celebration,
then
you
can
separate
many
things,
and
that
means
that
this
symbol
is
public
means
it
can
be
used
from
anywhere
and
otherwise
it
is
not
really
driving
but
internal
module.
So
that
means
you
can
only
use
it
more
quietly
or
in
the
module
and
all
children.
E
A
Here,
as
I
said,
we
are
now
playground.
That
means
we
don't
have
different
files,
here,
just
this
old
module
declaration,
but
that's
not
so
important.
We
just
have
to
understand
that
again,
that's
exactly
the
same
as
what
we
had
in
the
application.
This
module
will
be
enl
and
we
had
is
the
type
et
declared
and
the
last
module
has
kat
and
this
function
mio.
We
can
now
say
super
point
pad
here,
because
kat
is
one
of
our
fathers
or
one
of
our
modules.
That
means
we
can
use
it.
A
Even
though
cat
is
not
public
here,,
which
is
not
allowed,,
for
example.
It
is
here
that
we
call
this
litter
because
the
module
there
is
a
twin
of
ours
or
a
sibling
of
ours.
We
cannot
access
it.
We
can
only
access
those
above
us
that
from
a
symbol
only
the
children
modules
can
access
it.
If
we
now
want
to
access
this
there,
so
I'd
be
happy
to
do
it,
so
you
can
see,
what's
coming,,
be
it
privately
good
now
I
would
have
to
write
off
the
fixed
one
before
this
litter
or
is
it
ok?
A
A
A
E
A
There
in
front
of
china,
he
could,
however,
also
present
in
front
of
modules.
We
will
explain
why
that
makes
sense.
We
can
prescribe
for
use
and
deaf
and
external
trade
that
doesn't
necessarily
tell
us
what
it
will
be
then
later
see,
but
I
would
like
to
at
least
make
this
list
complete
that,
according
to
only
yours,
the
parts
that
we
do
n't
know
yet,
but
of
course
we
can
also
write
this
pack
for
apple's
trucks
or
stretches
fields
to
make
these
fields
public
or
not.
A
We
can,
and
that's
the
special
thing
export
a
few
new
news
if
this
paper
small
cap
before
this,
this
situation,
if
this
amount
rsr
place
under
change
manually
and
in
all
just
a
terror
camp
created
in
this
chat,
module
is
precisely
defined.
I
can
now
in
maine.
I
can
myself
invoke
with
a
colon
colon
ketsch
double
double
dot.
I
can
call
it.
A
A
Yes,
I
have
already
heard
the
first
real
thing
we
have
to,
but
all
parts
of
the
can
access
the
path.
That
means,
if
we
write
a
message
here,
dot
double
from
kate
colon,
you
can
also
access
two
of
these
three
parts.
We
can
now
change
access
that
is
directly
from
art
kind.
That
means
it
belongs
to
us
there.
We
can
also
have
our
private
things
to
grab.
We
can
also
access
the
level
declared
as
public,
but
we
can't
catch
parents.
A
A
And
now
only
one
a
special
syntax
show
a
special
feature
of
last
des
cafés,
where
we
can
export
the
thread.
Among
other
things,
you
can
now
say
here:
papiers
kat.
If
I
would
just
say,
then
I
could
yes
audi
name
space
right
here:
module
address
without
giving
a
few
more.
That
means
it
is
as
if
this
time
was
defined
in
this
module.
A
If
you
now
say
pub,
uci
kat,
then
it
also
looks
from
the
outside,
as
if
this
time
was
defined
in
this
module.
That
means
I
can,
in
my
women,
say
it
is
necessary.
Sometimes
it
is
necessary.
If
you
have
really
huge
files,
you
don't
want
to
split
it
up
in
a
module,
but
you
want
your
files
to
be
uploaded
in
march
and
you
can
split
several
files.
The
files
as
public
modules
declared
as
drive
Declare
the
module
and
export
the
things
you
need
from
it
publicly.
A
Again.
That
's,
really
a
rather
special
application,,
but
then
I
would
at
least
have
run
for
a
moment
so
that
you
can
see
it
too.
So.
The
module
system
is
actually
quite
flexible,.
Even
with
this
paper
scandal,,
you
can
do
quite
a
lot
of
things
if
it
gets
very
strict
at
the
beginning.
There
will
be
questions.