Difference between revisions of "Tutorial tour"
Jump to navigation
Jump to search
m (10 revisions: initial import from SamrtEiffel Wiki - The Grand SmartEiffel Book) |
(No difference)
|
Revision as of 22:50, 3 March 2013
Welcome to the guided tour of the tutorial!
All the classes in the tutorial are provided with your SmartEiffel installation, in the tutorial
directory.
Easy starting
Hello world... To execute the program, go to the SmartEiffel/tutorial
directory and execute the command:
se c HELLO_WORLD make -o hello
The meaning of the command is
se
|
the front-end tool for the SmartEiffel compiler |
c
|
the tool invoked by se for compile into an executable
|
HELLO_WORLD
|
the class of which an object is created (you may also write it in lower-case, or use its filename with the .e extension)
|
make
|
the creation procedure of the HELLO_WORLD class to call
|
-o hello
|
generates an executable with the name hello (linux) or hello.exe (windows) |
The command produces an executable, usually hello
or hello.exe
depending on the system. After compiling is finished, you can run the executable.
This unavoidable program is in hello_world.e
and lets you grasp the basic concepts of Eiffel. Those concepts are:
- Everything is a class. In Eiffel, outside classes there is no salvation.
- The program starts by creating an object. Here, the method is the
make
creation feature in the classHELLO_WORLD
. - Each file is named after the name of the class it contains, in lower-case, with the
.e
extension. - Note the special object
io
that allows you to write text on the standard output. We will see that it also lets you read data. - For the Eiffel syntax, look here.
See also:
- fibonacci.e
- knight.e
- pyramide.e and pyramide2.e
- gcd
- hanoi
- parking
- triangle
To compile the other samples you must modify the compiler command.
Some important concepts
ACE files
Input-output
- io
- directory
- basic_directory?
Arguments
print_arguments.e
Collections
including iterator and sorting
Manifest notations
manifest_notation.e
Downcasting
downcasting.e
To go further
Agents
... and tuples
external
cecil
Memory management
memory
Extension libraries
Random
Date & time
Storable
Sequencer
Vision
visiopn, signal