File: eval_string.texi

package info (click to toggle)
maxima 5.10.0-6
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 44,268 kB
  • ctags: 17,987
  • sloc: lisp: 152,894; fortran: 14,667; perl: 14,204; tcl: 10,103; sh: 3,376; makefile: 2,202; ansic: 471; awk: 7
file content (55 lines) | stat: -rw-r--r-- 1,919 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
@menu
* Definiciones para eval_string::
@end menu

@node Definiciones para eval_string,  , eval_string, eval_string
@section Definiciones para eval_string


@deffn {Funci@'on} eval_string (@var{str})
Analiza sint@'acticamente la cadena @var{str} interpret@'andola
como una expresi@'on de Maxima y evalu@'andola a continuaci@'on.
El valor dado a  @var{str} debe ser una cadena de Maxima (no de Lisp).
La expresi@'on puede terminar con un car@'acter de terminaci@'on de
sentencia (@code{$} o @code{;}) o carecer de @'el. Tan solo se
analiza y eval@'ua la primera expresi@'on si hay m@'as de una.

Si @var{str} no es una cadena de Maxima se emite un mensaje de error.

Ejemplos:
@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

Antes de hacer uso de esta funci@'on ejec@'utese  @code{load("eval_string")}. V@'ease tambi@'en @code{parse_string}.
@end deffn


@deffn {Funci@'on} parse_string (@var{str})
Analiza sint@'acticamente la cadena @var{str} interpret@'andola
como una expresi@'on de Maxima sin evaluarla.
El valor dado a  @var{str} debe ser una cadena de Maxima (no de Lisp).
La expresi@'on puede terminar con un car@'acter de terminaci@'on de
sentencia (@code{$} o @code{;}) o carecer de @'el. Tan solo se
analiza y eval@'ua la primera expresi@'on si hay m@'as de una.

Si @var{str} no es una cadena de Maxima se emite un mensaje de error.

Ejemplos:
@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

Antes de hacer uso de esta funci@'on ejec@'utese  @code{load("eval_string")}. V@'ease tambi@'en @code{eval_string}.
@end deffn