@c /eval_string.texi/1.1/Mon Feb 27 22:09:17 2006//
@menu
* Definições para eval_string::
@end menu

@node Definições para eval_string,  , eval_string, eval_string
@section Definições para eval_string

@deffn {Função} eval_string (@var{str})
Entrega a sequência de caracteres do Maxima @var{str} como uma expressão do Maxima e a avalia.
@var{str} é uma sequência de caracteres do Maxima. Essa sequência pode ou não ter um marcador de final (sinal de dólar @code{$} ou ponto e vírgula @code{;}).
Somente a primeira expressão é entregue e avaliada, se ouver mais de uma.

Reclama se @var{str} não for uma sequência de caracteres do Maxima.

Exemplos:
@example
(%i1) load("eval_string")$

(%i2) eval_string ("foo: 42; bar: foo^2 + baz");
(%o2)                       42
(%i3) eval_string ("(foo: 42, bar: foo^2 + baz)");
(%o3)                   baz + 1764
@end example

Para usar essa função escreva primeiro @code{load("eval_string")}. Veja também @code{parse_string}.
@end deffn


@deffn {Função} parse_string (@var{str})
Entrega a sequência de caracteres do Maxima @var{str} como uma expressão do Maxima (sem fazer nenhuma avaliação dessa expressão).
@var{str} é uma sequência de caracteres do Maxima. Essa sequência pode ou não ter um marcador de final (sinal de dólar @code{$} ou ponto e vírgula @code{;}).
Somente a primeira expressão é entregue e avaliada, se ouver mais de uma.

Reclama se @var{str} não for uma sequência de caracteres do Maxima.

Exemplos:
@example
(%i1) load("eval_string")$

(%i2) parse_string ("foo: 42; bar: foo^2 + baz");
(%o2)                    foo : 42
(%i3) parse_string ("(foo: 42, bar: foo^2 + baz)");
                                   2
(%o3)          (foo : 42, bar : foo  + baz)
@end example

Para usar essa função escreva primeiro @code{load("eval_string")}. Veja também a função @code{eval_string}.
@end deffn

