1
00:00:01,510 --> 00:00:03,330
In this video I would like 
to show you

2
00:00:03,330 --> 00:00:06,530
some simple elements of Nautilus.
I will show you

3
00:00:06,530 --> 00:00:08,770
more complex elements
in following videos

4
00:00:08,770 --> 00:00:12,060
related to the class browser.

5
00:00:12,140 --> 00:00:14,920
Nautilus is what will enable you
to browse in the code.

6
00:00:16,860 --> 00:00:18,640
I open it. What do we have?

7
00:00:20,110 --> 00:00:21,700
You have all Pharo packages.

8
00:00:23,150 --> 00:00:27,800
Let’s consider for example
AST-Core which is a package

9
00:00:27,800 --> 00:00:31,530
used by the compiler to parse code
and represent code.

10
00:00:32,660 --> 00:00:36,360
I have the AST-Core package.
I will have the classes

11
00:00:36,550 --> 00:00:39,800
contained in the AST-Core package
and we can see for 

12
00:00:39,800 --> 00:00:44,250
instance that there is inheritance
here, RBAssignmentToken

13
00:00:45,510 --> 00:00:46,680
inherits from RBToken.

14
00:00:49,630 --> 00:00:54,390
Now, for instance, if I click on
NumberParser,

15
00:00:54,390 --> 00:00:57,740
here you have
the NumberParser class.

16
00:00:57,740 --> 00:01:00,460
Here, I can see its comment.

17
00:01:02,140 --> 00:01:03,990
And there I see the protocols.

18
00:01:03,990 --> 00:01:07,370
The protocols are conceptual
groups of methods.

19
00:01:07,870 --> 00:01:10,160
If I click on “all”, I can see
all the methods

20
00:01:10,160 --> 00:01:12,400
of this class, otherwise
I can select 

21
00:01:12,980 --> 00:01:15,070
some protocols giving me 
a more precise piece of 

22
00:01:15,070 --> 00:01:17,660
information as, for instance,
initalize-release.

23
00:01:17,660 --> 00:01:20,610
It means that it is the method 
that will initialise the Parser.

24
00:01:20,610 --> 00:01:24,940
Here you have all the methods
linked to the way you 

25
00:01:24,940 --> 00:01:25,680
parse a number.

26
00:01:25,850 --> 00:01:27,700
I can see that this one is
public whereas

27
00:01:27,700 --> 00:01:30,220
these ones are private,
indicating I won’t

28
00:01:30,290 --> 00:01:32,660
have to call them from
the outside in a general way.

29
00:01:32,980 --> 00:01:37,800
Now if I am here, I will see the 
method’s code.
