> If i understand well the structure of Maxima, it is essentially a lisp
> interpreter with a layer that translates the syntax to the user interface,
> and a big set of predefined functions.
That is almost correct. The Maxima language is similar to Lisp in
many ways, but it is not Lisp. The external form of Maxima is
translated into an internal form, and that is interpreted by Maxima's
own language interpreter, which has somewhat different semantics, most
notably that a symbol or a function without a value evaluates to
itself rather than giving an error, and that simplification is called
after evaluation. (But there are many other, more subtle,
differences.)
And as you say, there is a large library of predefined functions.
There is a translator that can translate Maxima language programs into
Lisp (translate) and a compiler that will first translate into Lisp
and then compile the resulting Lisp. See Barton's email for more
information about that.
In numerical calculations, this can make for a huge increase in speed
(especially with correct declarations). For symbolic calculations,
most time is spent inside the simplifier and other libraries, and the
speedup will be less, often even negligeable.
-s