Rename specvar integer-info to *integer-info*
[maxima.git] / doc / info / de / Translator.de.texi
blob382216fcc93a4dfc449d9d736b0cff4a3dc17d37
1 @c -----------------------------------------------------------------------------
2 @c File        : Translator.de.texi
3 @c License     : GNU General Public License (GPL)
4 @c Language    : German
5 @c Original    : New file
6 @c Translation : Dr. Dieter Kaiser
7 @c Date        : 28.12.2010
8 @c Revision    : 01.10.2011
9 @c 
10 @c This file is part of Maxima -- GPL CAS based on DOE-MACSYMA
11 @c -----------------------------------------------------------------------------
13 @menu
14 * Einf@"uhrung in den @"Ubersetzer::
15 * Funktionen und Variablen des @"Ubersetzers::
16 @end menu
18 @c -----------------------------------------------------------------------------
19 @node Einf@"uhrung in den @"Ubersetzer, Funktionen und Variablen des @"Ubersetzers, @"Ubersetzer, @"Ubersetzer
20 @section Einf@"uhrung in den @"Ubersetzer
21 @c -----------------------------------------------------------------------------
23 @c -----------------------------------------------------------------------------
24 @node Funktionen und Variablen des @"Ubersetzers, , Einf@"uhrung in den @"Ubersetzer, @"Ubersetzer
25 @section Funktionen und Variablen des @"Ubersetzers
26 @c -----------------------------------------------------------------------------
28 @c --- 01.10.2011 DK -----------------------------------------------------------
29 @anchor{compfile}
30 @deffn  {Funktion} compfile (@var{filename}, @var{f_1}, @dots{}, @var{f_n})
31 @deffnx {Funktion} compfile (@var{filename}, functions)
32 @deffnx {Funktion} compfile (@var{filename}, all)
34 @c Translates Maxima functions into Lisp and writes the translated code into the
35 @c file @var{filename}.
36 @c @code{compfile(@var{filename}, @var{f_1}, ..., @var{f_n})} translates the
37 @c specified functions. @code{compfile(@var{filename}, functions)} and 
38 @c @code{compfile(@var{filename}, all)} translate all user-defined functions.
40 @"Ubersetzt Maxima-Funktionen nach Lisp und schreibt den @"ubersetzten Code in 
41 die Datei @var{filename}.  Mit dem Kommando @code{compfile(@var{filename}
42 @var{f_1}, ..., @var{f_n})} werden die als Argument angegebenen Funktionen
43 @var{f_1}, @dots{}, @var{f_n} @"ubersetzt.  Die Kommandos
44 @code{compfile(@var{filename}, functions)} oder @code{compfile(@var{filename},
45 all)} @"ubersetzen dagegen alle vom Nutzer definierten Funktionen.
47 @c The Lisp translations are not evaluated, nor is the output file processed by 
48 @c the Lisp compiler.
49    @c SO LET'S CONSIDER GIVING THIS FUNCTION A MORE ACCURATE NAME.
50 @c @code{translate} creates and evaluates Lisp translations. @code{compile_file}
51 @c translates Maxima into Lisp, and then executes the Lisp compiler. 
53 Die Lisp-@"Ubersetzungen werden nicht ausgewertet.  Auch wird die Ausgabedatei
54 nicht kompiliert.  @code{translate} generiert und wertet Lisp-@"Ubersetzungen
55 aus.  Die Funktion @code{compile_file} @"ubersetzt Maxima nach Lisp und f@"uhrt
56 dann den Lisp-Compiler aus.
58 @c See also @code{translate}, @code{translate_file}, and @code{compile_file}.
60 Siehe auch die Funktionen @mrefcomma{translate} @mref{translate_file} und
61 @mrefdot{compile_file}
62 @end deffn
64 @c THIS VARIABLE IS OBSOLETE: ASSIGNING compgrind: true CAUSES compfile
65 @c TO EVENTUALLY CALL AN OBSOLETE FUNCTION SPRIN1.
66 @c RECOMMENDATION IS TO CUT THIS ITEM, AND CUT $compgrind FROM src/transs.lisp
67 @c @defvar compgrind
68 @c Default value: @code{false}
69 @c 
70 @c When @code{compgrind} is @code{true}, function definitions printed by
71 @c @code{compfile} are pretty-printed.
72 @c 
73 @c @end defvar
75 @c --- 28.12.2010 DK -----------------------------------------------------------
76 @anchor{compile}
77 @deffn  {Funktion} compile (@var{f_1}, @dots{}, @var{f_n})
78 @deffnx {Funktion} compile (functions)
79 @deffnx {Funktion} compile (all)
81 @c Translates Maxima functions @var{f_1}, ..., @var{f_n} into Lisp, evaluates 
82 @c the Lisp translations, and calls the Lisp function @code{COMPILE} on each 
83 @c translated function. @code{compile} returns a list of the names of the 
84 @c compiled functions.
86 @"Ubersetzt die Maxima-Funktionen @var{f_1}, @dots{}, @var{f_n} nach Lisp, 
87 wertet die Lisp-@"Ubersetzungen aus und ruft den Lisp-Compiler f@"ur jede 
88 @"ubersetzte Funktion auf.  @code{compile} gibt eine Liste mit den Namen der 
89 kompilierten Funktionen zur@"uck.
91 @c @code{compile (all)} or @code{compile (functions)} compiles all user-defined
92 @c functions.
94 @code{compile(all)} oder @code{compile(funtions)} kompiliert alle
95 nutzerdefinierten Funktionen.
97 @c @code{compile} quotes its arguments;  the quote-quote operator @code{'@w{}'}
98 @c defeats quotation.
100 @code{compile} wertet die Argumente nicht aus.  Der
101 @nxref{'', Quote-Quote-Operator} @code{''} erzwingt die Auswertung.
103 @end deffn
105 @c --- 28.12.2010 DK -----------------------------------------------------------
106 @anchor{compile_file}
107 @deffn  {Funktion} compile_file (@var{filename})
108 @deffnx {Funktion} compile_file (@var{filename}, @var{compiled_filename})
109 @deffnx {Funktion} compile_file (@var{filename}, @var{compiled_filename}, @var{lisp_filename})
111 @c Translates the Maxima file @var{filename} into Lisp, executes the Lisp 
112 @c compiler, and, if the translation and compilation succeed, loads the compiled
113 @c code into Maxima.
115 @"Ubersetzt die Maxima-Datei @var{filename} nach Lisp, ruft den Lisp-Compiler 
116 auf und l@"adt falls erfolgreich den kompilierten Code in Maxima.
118 @c @code{compile_file} returns a list of the names of four files: the original 
119 @c Maxima file, the Lisp translation, notes on translation, and the compiled 
120 @c code. If the compilation fails, the fourth item is @code{false}.
122 @code{compile_file} gibt eine Liste mit den Namen von vier Dateien zur@"uck:
123 die urspr@"ungliche Maxima-Datei, die Lisp-@"Ubersetzung, eine Datei mit Notizen
124 zur @"Ubersetzungen und eine Datei mit dem kompilierten Code.  Schl@"agt die
125 Kompilierung fehlt, ist der vierte Eintrag @code{false}.
127 @c Some declarations and definitions take effect as soon as the Lisp code is 
128 @c compiled (without loading the compiled code). These include functions defined
129 @c with the @code{:=} operator, macros define with the @code{::=} operator, 
130    @c HEDGE -- DON'T KNOW IF THERE IS ANOTHER WAY
131 @c @code{alias}, @code{declare}, @code{define_variable},  @code{mode_declare},
132 @c and @code{infix}, @code{matchfix}, @code{nofix}, @code{postfix}, 
133 @c @code{prefix}, and @code{compfile}.
135 Einige Deklarationen und Definitionen sind bereits vorhanden, nachdem der 
136 Lisp-Code kompiliert ist und ohne das dieser geladen wurde.  Dies schlie@ss{}t
137 Funktionsdefinitionen mit dem Operator @code{:=}, Makros definiert mit dem
138 Operator @code{::=} sowie Definitionen der folgenden Funktionen @code{alias}, 
139 @code{declare}, @code{define_variable}, @code{mode_declare}, @code{infix}, 
140 @code{matchfix}, @code{nofix}, @code{postfix}, @code{prefix} und 
141 @code{compfile} ein.
143 @c Assignments and function calls are not evaluated until the compiled code is 
144 @c loaded. In particular, within the Maxima file, assignments to the translation
145 @c flags (@code{tr_numer}, etc.) have no effect on the translation.
147 Zuweisungen und Funktionsaufrufe werden nicht ausgwertet bevor der komplierte
148 Code geladen wird.  Im besonderen haben Zuweisungen an die 
149 @"Ubersetzungsschalter wie @code{tr_numer} und andere, die in der Maxima-Datei
150 aufgef@"uhrt sind, keinen Effekt auf die @"Ubersetzung.
152 @c @code{compile_file} may mistake warnings for errors and
153 @c return @code{false} as the name of the compiled code when, in fact,
154 @c the compilation succeeded. This is a bug. 
155    @c REPORTED AS SOURCEFORGE BUG # 1103722.
157 @code{compile_file} kann Fehler oder Warnungen ausgegeben und @code{false}
158 zur@"uckgegeben, obwohl die Kompilierung erfolgreich ist.  Dies ist ein
159 Programmfehler
161 @c @var{filename} may not contain @code{:lisp} statements.
163 Die Datei @var{filename} darf keine @code{:lisp}-Anweisungen enthalten.
165 @c @code{compile_file} evaluates its arguments.
167 @code{compile_file} wertet die Argumente aus.
169 @end deffn
171 @c --- 28.12.2010 DK -----------------------------------------------------------
172 @anchor{declare_translated}
173 @deffn {Funktion} declare_translated (@var{f_1}, @var{f_2}, @dots{})
175 @c When translating a file of Maxima code to Lisp, it is important for the 
176 @c translator to know which functions it sees in the file are to be called as 
177 @c translated or compiled functions, and which ones are just Maxima functions or
178 @c undefined. Putting this declaration at the top of the file, lets it know that
179 @c although a symbol does which does not yet have a Lisp function value, will 
180 @c have one at call time. @code{(MFUNCTION-CALL fn arg1 arg2 ...)} is generated 
181 @c when the translator does not know @code{fn} is going to be a Lisp function.
183 Bei der @"Ubersetzung einer Datei von Maxima-Code nach Lisp-Code ist es f@"ur 
184 den @"Ubersetzer wichtig zu wissen, welche Funktionen der Datei bereits 
185 @"ubersetzte oder kompilierte Funktionen sind und welche Funktionen 
186 Maxima-Funktionen oder undefiniert sind.  Mit der Deklaration 
187 @code{declare_translated} am Anfang der zu @"ubersetzenden Datei wird dem 
188 @"Ubersetzer mitgeteilt, dass die als Argumente aufgef@"uhrten Funktionen 
189 @var{f_1}, @var{f_2}, @dots{} zur Laufzeit des Programms eine Lisp-Funktion 
190 repr@"asentieren.  Fehlt dem @"Ubersetzer diese Information wird das Kommando 
191 @code{(MFUNCTION-CALL fn arg1 arg2 ...)} generiert.
193 @end deffn
195 @c --- 28.12.2010 DK -----------------------------------------------------------
196 @anchor{mode_checkp}
197 @defvr {Optionsvariable} mode_checkp
198 Standardwert: @code{true}
200    @c WHAT DOES THIS MEAN ??
201 @c When @code{mode_checkp} is @code{true}, @code{mode_declare} checks the modes
202 @c of bound variables.
204 Hat die Optionsvariable @code{mode_checkp} den Wert @code{true} und wird
205 mit @code{mode_declare} f@"ur eine Variable, die bereits einen Wert hat, ein Typ 
206 festgelegt, dann pr@"uft Maxima, ob der vorgesehene Typ zum vorliegenden Wert 
207 passt.
209 Beispiel:
211 Im folgenden hat die Variable @var{n} den Wert 2.0.  Wird @var{n} mit
212 @code{mode_declare} als eine ganze Zahl definiert, gibt Maxima eine Warnung aus,
213 wenn @code{mode_checkp} den Wert @code{true} hat.
215 @example
216 (%i1) n: 2.0;
217 (%o1)                          2.0
218 (%i2) mode_checkp:true;
219 (%o2)                         true
220 (%i3) mode_declare(n,fixnum);
221 warning: n was declared with mode fixnum, but it has value: 2.0
222 (%o3)                          [n]
223 (%i4) mode_checkp:false;
224 (%o4)                         false
225 (%i5) mode_declare(n,fixnum);
226 (%o5)                          [n]
227 @end example
229 @end defvr
231 @c --- 28.12.21010 DK ----------------------------------------------------------
232 @anchor{mode_check_errorp}
233 @defvr {Optionsvariable} mode_check_errorp
234 Standardwert: @code{false}
236    @c WHAT DOES THIS MEAN ??
237 @c When @code{mode_check_errorp} is @code{true}, @code{mode_declare} calls 
238 @c error.
240 Hat @code{mode_check_errorp} den Wert @code{true}, bricht @code{mode_declare}
241 mit einer Fehlermeldung ab, wenn f@"ur eine Variable die bereits einen Wert hat,
242 mit @code{mode_declare} ein verschiedener Typ deklariert werden soll.  Damit
243 diese Optionsvariable wirksam ist, muss @code{mode_checkp} den Wert @code{true}
244 haben.  Siehe @mrefdot{mode_checkp}
246 @example
247 (%i1) n: 2.0;
248 (%o1)                          2.0
249 (%i2) mode_checkp:true;
250 (%o2)                         true
251 (%i3) mode_check_errorp:true;
252 (%o3)                         true
253 (%i4) mode_declare(n,fixnum);
255 Error: n was declared mode fixnum, has value: 2.0
256  -- an error. To debug this try: debugmode(true);
257 @end example
259 @end defvr
261 @c --- 28.12.2010 DK -----------------------------------------------------------
262 @anchor{mode_check_warnp}
263 @defvr {Optionsvariable} mode_check_warnp
264 Standardwert: @code{true}
266    @c WHAT DOES THIS MEAN ??
267 @c When @code{mode_check_warnp} is @code{true}, mode errors are described.
269 Hat @code{mode_check_warnp} den Wert @code{true}, gibt @code{mode_declare}
270 eine Warnung aus, wenn f@"ur eine Variable die bereits einen Wert hat,
271 mit @code{mode_declare} ein verschiedener Typ deklariert werden soll.  Damit
272 diese Optionsvariable wirksam ist, muss @code{mode_checkp} den Wert @code{true}
273 haben.  Siehe @mref{mode_checkp} und @mrefdot{mode_check_errorp}
275 @end defvr
277 @c NEEDS CLARIFICATION AND EXAMPLES
279 @c --- 02.01.2011 DK -----------------------------------------------------------
280 @anchor{mode_declare}
281 @deffn {Funktion} mode_declare (@var{y_1}, @var{mode_1}, @dots{}, @var{y_n}, @var{mode_n})
283 @c @code{mode_declare} is used to declare the modes of variables and functions 
284 @c for subsequent translation or compilation of functions. @code{mode_declare} 
285 @c is typically placed at the beginning of a function definition, at the 
286 @c beginning of a Maxima script, or executed at the interactive prompt.
288 @code{mode_declare} deklariert den Typ von Variablen und Funktionen f@"ur den
289 @"Ubersetzer und den Kompilierer.  Typischerweise wird @code{mode_declare} am
290 Anfang einer Funktion oder einer Datei mit Maxima-Code ausgef@"uhrt.
292 @c The arguments of @code{mode_declare} are pairs consisting of a variable and a
293 @c mode which is one of @code{boolean}, @code{fixnum}, @code{number}, 
294 @c @code{rational}, or @code{float}. Each variable may also be a list of 
295 @c variables all of which are declared to have the same mode.
297 Die Argumente werden paarweise angegeben und bezeichnen jeweils den Namen einer
298 Variablen sowie deren Typ.  Folgende Typen k@"onnen die Variablen erhalten:
299 @code{boolean}, @code{fixnum}, @code{number}, @code{rational} oder @code{float}.
300 Anstatt dem Namen einer Variablen kann auch eine Liste mit den Namen von
301 Variablen angegeben werden.  In diesem Fall erhalten alle Variablen der Liste
302 den angegebenen Typ.
304    @c WHAT DOES THE FOLLOWING STATEMENT MEAN ???
305 @c If a variable is an array, and if every element of the array which is
306 @c referenced has a value then @code{array (yi, complete, dim1, dim2, ...)}
307 @c rather than
308 @c @example
309 @c array(yi, dim1, dim2, ...)
310 @c @end example
311 @c should be used when first declaring the bounds of the array.
312    @c WHAT DOES THE FOLLOWING STATEMENT MEAN ???
313 @c If all the elements of the array are of mode @code{fixnum} (@code{float}), 
314 @c use @code{fixnum} (@code{float}) instead of @code{complete}.
316 Ein Array sollte bereits bei seiner Deklaration einen Typ f@"ur die Elemente
317 erhalten.  Haben alle Elemente des Arrays einen Wert sollte das Array mit der
318 Option @code{complete} deklariert werden, zum Beispiel
319 @code{array(a, complete, dim1, dim2, ...)}.  Sind die Elemente des Arrays
320 ganze Zahlen oder Gleitkommazahlen sollte der Typ als @code{fixnum} oder
321 @code{flonum} deklariert werden.
323    @c WHAT DOES THE FOLLOWING STATEMENT MEAN ???
324 @c Also if every element of the array is of the same mode, say @code{m}, then
325 @c @example
326 @c mode_declare (completearray (yi), m))
327 @c @end example
328 @c should be used for efficient translation.
329 @c Numeric code using arrays might run faster by declaring the expected size of 
330 @c the array, as in:
331 @c @example
332 @c mode_declare (completearray (a [10, 10]), float)
333 @c @end example
334 @c for a floating point number array which is 10 x 10.
336 Mit der Funktion @code{mode_declare} kann dann der Typ des Arrays f@"ur den
337 @"Ubersetzer oder Kompilierer festgelegt werden.  Ein Array der Gr@"o@ss{}e 
338 10 @code{x} 10 mit Gleitkommazahlen erh@"alt die Deklaration
339 @code{mode_declare(completearray(a[10, 10], float)}.
341 @c One may declare the mode of the result of a function by using @code{function 
342 @c (f_1, f_2, ...)} as an argument; here @code{f_1}, @code{f_2}, ... are the 
343 @c names of functions.  For example the expression,
344 @c @example
345 @c mode_declare ([function (f_1, f_2, ...)], fixnum)
346 @c @end example
347 @c declares that the values returned by @code{f_1}, @code{f_2}, @dots{} are 
348 @c single-word integers.
350 Der Typ von Funktionen wird mit dem Argument @code{function(f_1, f2, ...)}
351 deklariert.  Hier sind @code{f_1}, @code{f_2}, @dots{} die Funktionen.  Mit
352 @code{mode_declare([function (f_1, f_2, ...)], fixnum)} werden die 
353 R@"uckgabewerte der Funktionen @code{f_1}, @code{f_2}, @dots{} als ganze Zahlen 
354 definiert.
356 @c @code{modedeclare} is a synonym for @code{mode_declare}.
358 @code{modedeclare} ist ein Alias-Name der Funktion @code{mode_declare}.
360 @end deffn
362 @c WHAT IS THIS ABOUT ??
363 @c NEEDS CLARIFICATION AND EXAMPLES
365 @c --- 02.01.2011 DK -----------------------------------------------------------
366 @anchor{mode_identity}
367 @deffn {Funktion} mode_identity (@var{mode}, @var{expr})
369 @c A special form used with @code{mode_declare} and @code{macros} to declare, 
370 @c e.g., a list of lists of flonums, or other compound data object.  The first 
371 @c argument to @code{mode_identity} is a primitive value mode name as given to 
372 @c @code{mode_declare} (i.e., one of @code{float}, @code{fixnum}, @code{number},
373 @c @code{list}, or @code{any}), and the second argument is an expression which 
374 @c is evaluated and returned as the value of @code{mode_identity}.  However, if 
375 @c the return value is not allowed by the mode declared in the first argument, 
376 @c an error or warning is signalled.  The important thing is that the mode of 
377 @c the expression as determined by the Maxima to Lisp translator, will be that 
378 @c given as the first argument, independent of anything that goes on in the 
379 @c second argument. E.g., @code{x: 3.3; mode_identity (fixnum, x);} yields an 
380 @c error. @code{mode_identity (flonum, x)} returns 3.3 . This has a number of 
381 @c uses, e.g., if you knew that @code{first (l)} returned a number then you 
382 @c might write @code{mode_identity (number, first (l))}.  However, a more 
383 @c efficient way to do it would be to define a new primitive,
384 @c @example
385 @c firstnumb (x) ::= buildq ([x], mode_identity (number, first(x)));
386 @c @end example
387 @c and use @code{firstnumb} every time you take the first of a list of numbers.
389 Mit der Funktion @code{mode_identity} wird der Typ @var{mode} f@"ur das
390 Ergebnis des Ausdrucks @var{expr} festgelegt.  Hat das Ergebnis einen anderen 
391 Typ wird in Abh@"angigkeit von den Werten der Optionsvariablen 
392 @code{mode_checkp}, @code{mode_check_warnp} und @code{mode_check_errorp} eine
393 Warnung ausgegeben oder das Programm abgebrochen.
395 Beispiel:
397 @c ===beg===
398 @c mode_identity(flonum, sin(1.0));
399 @c mode_identity(integer, sin(1.0));
400 @c mode_identity(integer, sin(a));
401 @c ===end===
402 @example
403 (%i1) mode_identity(flonum, sin(1.0));
404 (%o1)                   .8414709848078965
405 (%i2) mode_identity(integer, sin(1.0));
406 warning: sin(1.0) was declared with mode fixnum
407                             , but it has value: .8414709848078965
408 (%o2)                   .8414709848078965
409 (%i3) mode_identity(integer, sin(a));
410 warning: sin(a) was declared with mode fixnum, but it has value: 
411                                                            sin(a)
412 (%o3)                        sin(a)
413 @end example
415 @end deffn
417 @c --- 02.01.2011 DK -----------------------------------------------------------
418 @anchor{savedef}
419 @defvr {Optionsvariable} savedef
420 Standardwert: @code{true}
422 @c When @code{savedef} is @code{true}, the Maxima version of a user function is 
423 @c preserved when the function is translated. This permits the definition to be 
424 @c displayed by @code{dispfun} and allows the function to be edited.
426 Hat @code{savedef} den Wert @code{true}, wird die Maxima-Definition einer
427 Funktion nicht gel@"oscht, wenn die Funktion @"ubersetzt wird.  Damit kann die
428 Definition der Funktion weiterhin mit @code{dispfun} angzeigt werden. 
430 @c When @code{savedef} is @code{false}, the names of translated functions are
431 @c removed from the @code{functions} list.
433 Hat @code{savedef} den Wert @code{false} wird die Maxima-Definition der Funktion
434 gel@"oscht, wenn die Funktion @"ubersetzt wird.
436 Beispiele:
438 @code{savedef} hat den Wert @code{true}.  Die Funktion @code{f} kann auch nach
439 der @"Ubersetzung angzeigt werden und ist in der Liste @code{functions}
440 enthalten.
442 @c ===beg===
443 @c savedef:true;
444 @c f(x):=x^2+sin(x);
445 @c translate(f);
446 @c dispfun(f);
447 @c functions;
448 @c ===end===
449 @example
450 (%i1) savedef:true;
451 (%o1)                         true
452 (%i2) f(x):=x^2+sin(x);
453                                 2
454 (%o2)                  f(x) := x  + sin(x)
455 (%i3) translate(f);
456 (%o3)                          [f]
457 (%i4) dispfun(f);
458                                 2
459 (%t4)                  f(x) := x  + sin(x)
461 (%o4)                         [%t4]
462 (%i5) functions;
463 (%o5)                        [f(x)]
464 @end example
466 Dasselbe f@"ur eine Funktion @code{g} mit dem Wert @code{false} f@"ur 
467 @code{savedef}.
469 @c ===beg===
470 @c savedef:false;
471 @c g(x):=sqrt(x)+cos(x)$
472 @c translate(g);
473 @c dispfun(g);
474 @c functions;
475 @c ===end===
476 @example
477 (%i6) savedef:false;
478 (%o6)                         false
479 (%i7) g(x):=sqrt(x)+cos(x)$
481 (%i8) translate(g);
482 (%o8)                          [g]
483 (%i9) dispfun(g);
485 fundef: no such function: g
486  -- an error. To debug this try: debugmode(true);
487 (%i10) functions;
488 (%o10)                       [f(x)]
489 @end example
491 @end defvr
493 @c IS THERE ANY REASON TO SET transcompile: false ??
494 @c MAYBE THIS VARIABLE COULD BE PERMANENTLY SET TO true AND STRUCK FROM 
495 @c THE DOCUMENTATION.
497 @c --- 03.01.2011 DK -----------------------------------------------------------
498 @anchor{transcompile}
499 @defvr {Optionsvariable} transcompile
500 Standardwert: @code{true}
502 @c When @code{transcompile} is @code{true}, @code{translate} and 
503 @c @code{translate_file} generate declarations to make the translated code more 
504 @c suitable for compilation.
505    @c BUT THE DECLARATIONS DON'T SEEM TO BE NECESSARY, SO WHAT'S THE POINT 
506    @c AGAIN ??
508 Hat @code{transcompile} den Wert @code{true}, generieren die Funktionen
509 @code{translate} und @code{translate_file} Deklarationen, die das Kompilieren
510 des Codes verbessern.
512 @c @code{compfile} sets @code{transcompile: true} for the duration.
514 @code{compfile} setzt den Wert von @code{transcompile} zu @code{true}.
516 @end defvr
518 @c --- 03.01.2011 DK -----------------------------------------------------------
519 @anchor{translate}
520 @deffn  {Funktion} translate (@var{f_1}, @dots{}, @var{f_n})
521 @deffnx {Funktion} translate (functions)
522 @deffnx {Funktion} translate (all)
524 @c Translates the user-defined functions @var{f_1}, ..., @var{f_n} from the 
525 @c Maxima language into Lisp and evaluates the Lisp translations.  Typically the 
526 @c translated functions run faster than the originals.
528 Die vom Nutzer definierten Maxima-Funktionen @var{f_1}, @dots{}, @var{f_n} 
529 werden nach Lisp @"ubersetzt.  Typischerweise sind die @"ubersetzten Funktionen 
530 schneller als die Maxima-Funktionen.
532 @c @code{translate (all)} or @code{translate (functions)} translates all 
533 @c user-defined functions.
535 @code{translate(all)} oder @code{translate(functions)} @"ubersetzt alle vom
536 Benutzer definierten Funktionen.
538 @c Functions to be translated should include a call to @code{mode_declare} at 
539 @c the beginning when possible in order to produce more efficient code.  For
540 @c example:
541 @c where the @var{x_1}, @var{x_2}, ...  are the parameters to the function and 
542 @c the @var{v_1}, @var{v_2}, ... are the local variables.
544 Funktionen, die @"ubersetzt werden sollen, sollten mit @code{mode_declare} den
545 Typ von Variablen und Funktionen deklarieren, um effizienteren Code zu erhalten.
546 Im Folgenden Beispiel sind @var{x_1}, @var{x_2}, @dots{} die Argumente der 
547 Funktion und @var{v_1}, @var{v_2}, @dots{} sind die lokalen Variablen.
549 @example
550 f (x_1, x_2, ...) := block ([v_1, v_2, ...],
551     mode_declare (v_1, mode_1, v_2, mode_2, ...), ...)
552 @end example
554 @c The names of translated functions are removed from the @code{functions} list 
555 @c if @code{savedef} is @code{false} (see below) and are added to the 
556 @c @code{props} lists.
558 Die Namen von @"ubersetzten Funktionen werden von der Informationsliste
559 @code{functions} entfernt, wenn die Optionsvariable @code{savedef} den Wert
560 @code{false} hat.  Sie werden der Informationsliste @code{props} hinzugef@"ugt.
562 @c Functions should not be translated unless they are fully debugged.
564 Funktionen sollten erst @"ubersetzt werden, wenn sie vollst@"andig von Fehlern
565 befreit wurden.
567 @c Expressions are assumed simplified; if they are not, correct but non-optimal 
568 @c code gets generated.  Thus, the user should not set the @code{simp} switch to 
569 @c @code{false} which inhibits simplification of the expressions to be 
570 @c translated.
572 Ausdr@"ucke werden als vereinfacht angenommen.  Sind sie es nicht, wird zwar
573 korrekter, aber nicht optimierter Code erzeugt.  Daher sollte der Schalter
574 @code{simp} nicht den Wert @code{false} haben, wodurch die Vereinfachung von
575 Ausdr@"ucken unterdr@"uckt w@"are.
577 @c The switch @code{translate}, if @code{true}, causes automatic translation of 
578 @c a user's function to Lisp.
580 Hat der Schalter @code{translate} den Wert @code{true}, werden nutzerdefinierte
581 Funktionen automatisch nach Lisp @"ubersetzt.
583 @c Note that translated functions may not run identically to the way they did 
584 @c before translation as certain incompatabilities may exist between the Lisp
585 @c and Maxima versions.  Principally, the @code{rat} function with more than
586 @c one argument and the @code{ratvars} function should not be used if any
587 @c variables are @code{mode_declare}'d canonical rational expressions (CRE).
588 @c Also the @code{prederror: false} setting will not translate.
589    @c WHAT ABOUT % AND %% ???
591 Das Laufzeitverhalten von @"ubersetzten Funktionen kann sich von dem 
592 nicht-@"ubersetzter Funktionen unterscheiden.  Grunds@"atzlich sollte die 
593 Funktion @code{rat} nicht mit mehr als zwei Argumenten und die Funktion 
594 @code{ratvars} nicht genutzt werden, wenn irgendeine der Variablen eine CRE-Form
595 mit Deklaration mit @code{mode_declare} aufweisen.  Auch wird 
596 @code{prederror:false} nicht @"ubersetzt.
598 @c @code{savedef} - if @code{true} will cause the Maxima version of a user
599 @c function to remain when the function is @code{translate}'d.  This permits the
600 @c definition to be displayed by @code{dispfun} and allows the function to be
601 @c edited.
602 @c @code{transrun} - if @code{false} will cause the interpreted version of all
603 @c functions to be run (provided they are still around) rather than the 
604 @c translated version.
606 Hat die Optionsvariable @code{savedef} den Wert @code{true}, wird die
607 Originalversion einer Funktion nicht entfernt.  Siehe @mrefdot{savedef}  Mit
608 dem Wert @code{false} f@"ur @code{transrun} werden, wenn noch vorhanden, die 
609 Originalversionen der @"ubersetzten Funktion ausgef@"uhrt.
611 @c The result returned by @code{translate} is a list of the names of the
612 @c functions translated.
614 Das Ergebnis der Funktion @code{translate} ist eine Liste der Namen der
615 @"ubersetzten Funktionen.
617 @end deffn
619 @c --- 03.01.2011 DK -----------------------------------------------------------
620 @anchor{translate_file}
621 @deffn  {Funktion} translate_file (@var{maxima_filename})
622 @deffnx {Funktion} translate_file (@var{maxima_filename}, @var{lisp_filename})
624 @c Translates a file of Maxima code into a file of Lisp code. 
625 @c @code{translate_file} returns a list of three filenames: the name of the
626 @c Maxima file, the name of the Lisp file, and the name of file containing 
627 @c additional information about the translation. @code{translate_file} evaluates 
628 @c its arguments.
630 @"Ubersetzt eine Datei mit Maxima-Code in eine Datei mit Lisp-Code.
631 @code{translate_file} gibt eine Liste mit drei Dateien zur@"uck, die den
632 Namen der Maxima-Datei, den Namen der Lisp-Datei und den Namen einer Datei
633 mit Informationen zur @"Ubersetzung enth@"alt.  @code{translate_file} wertet die
634 Argumente aus.
636 @c @code{translate_file ("foo.mac"); load("foo.LISP")} is the same as
637 @c @code{batch ("foo.mac")} except for certain restrictions, the use of 
638 @c @code{'@w{}'} and @code{%}, for example.
639    @c FIGURE OUT WHAT THE RESTRICTIONS ARE AND STATE THEM
641 Die Kommandos @code{translate_file("foo.mac")} und @code{load("foo.LISP")} 
642 haben bis auf wenige Ausnahmen dieselbe Wirkung wie @code{batch("foo.mac")}.  
643 Zum Beispiel funktionieren @code{'@w{}'} und @code{%} unterschiedlich.
645 @c @code{translate_file (@var{maxima_filename})} translates a Maxima file 
646 @c @var{maxima_filename} into a similarly-named Lisp file. For example, 
647 @c @code{foo.mac} is translated into @code{foo.LISP}. The Maxima filename may 
648 @c include a directory name or names, in which case the Lisp output file is 
649 @c written to the same directory from which the Maxima input comes.
651 @code{translate_file(@var{maxima_filename})} @"ubersetzt die Maxima-Datei
652 @var{maxima_filename} in ein Lisp-Datei mit einem vergleichbaren Namen.  Zum
653 Beispiel wird die Maxima-Datei @code{foo.mac} zu @code{foo.LISP}.  Der Name der 
654 Maxima-Datei kann Pfadangaben enthalten.  In diesem Fall wird die Lisp-Datei
655 in dasselbe Verzeichnis wie die Maxima-Datei geschrieben.
657 @c @code{translate_file (@var{maxima_filename}, @var{lisp_filename})} translates
658 @c a Maxima file @var{maxima_filename} into a Lisp file @var{lisp_filename}.
659 @c @code{translate_file} ignores the filename extension, if any, of 
660 @c @code{lisp_filename}; the filename extension of the Lisp output file is 
661 @c always @code{LISP}. The Lisp filename may include a directory name or names,
662 @c in which case the Lisp output file is written to the specified directory.
664 @code{translate_file(@var{maxima_filename}, @var{lisp_filename})} @"ubersetzt
665 die Maxima-Datei @var{maxima_filename} in eine Lisp-Datei mit dem Namen
666 @code{lisp_filename}.  @code{translate_file} ignoriert eine angegebene 
667 Dateiendung des Dateinamenes @code{lisp_filename}.  Die Dateiendung ist immer
668 @code{.LISP}.  Der Name der Lisp-Datei kann Pfadangaben enthalten, um die
669 Lisp-Datei in das gew@"unschte Verzeichnis zu schreiben.
671 @c @code{translate_file} also writes a file of translator warning messages of 
672 @c various degrees of severity. The filename extension of this file is 
673 @c @code{UNLISP}. This file may contain valuable information, though possibly 
674 @c obscure, for tracking down bugs in translated code. The @code{UNLISP} file is
675 @c always written to the same directory from which the Maxima input comes.
677 @code{translate_file} schreibt eine Ausgabedatei mit Meldungen des 
678 @"Ubersetzers.  Die Dateiendung der Ausgabedatei ist @code{.UNILISP}.  Die 
679 Informationen dieser Datei k@"onnen f@"ur die Fehlersuche genutzt werden.  Die 
680 Datei wird immer in das Verzeichnis geschrieben, das die Maxima-Datei enth@"alt.
682 @c @code{translate_file} emits Lisp code which causes some declarations and 
683 @c definitions to take effect as soon as the Lisp code is compiled. See 
684 @c @code{compile_file} for more on this topic.
686 @code{translate_file} generiert Lisp-Code mit Deklarationen und Definitionen,
687 die bereits beim Kompilieren des Codes wirksam werden.  Siehe 
688 @mref{compile_file} f@"ur mehr Informationen.
690    @c CHECK ALL THESE AND SEE WHICH ONES ARE OBSOLETE
692 @c See also @code{tr_array_as_ref},
694 Siehe auch die folgenden Optionsvariablen:
696 @flushleft
697 @code{tr_array_as_ref},
698 @c tr_bind_mode_hook EXISTS BUT IT APPEARS TO BE A GROTESQUE UNDOCUMENTED 
699 @c HACK WE DON'T. WANT TO MENTION IT.
700 @c @code{tr_bind_mode_hook}, 
701 @code{tr_bound_function_applyp},
702 @c tr_exponent EXISTS AND WORKS AS ADVERTISED IN src/troper.lisp
703 @c NOT OTHERWISE DOCUMENTED; ITS EFFECT SEEMS TOO WEAK TO MENTION
704 @code{tr_exponent},
705 @code{tr_file_tty_messagesp}, 
706 @code{tr_float_can_branch_complex},
707 @code{tr_function_call_default}, 
708 @code{tr_numer},
709 @code{tr_optimize_max_loop}, 
710 @code{tr_semicompile},
711 @code{tr_state_vars}, 
712 @code{tr_warnings_get},
713 @code{tr_warn_bad_function_calls},
714 @code{tr_warn_fexpr}, 
715 @code{tr_warn_meval},
716 @code{tr_warn_mode},
717 @code{tr_warn_undeclared},
718 und @code{tr_warn_undefined_variable}.
719 @end flushleft
721 @end deffn
723 @c --- 03.01.2011 DK -----------------------------------------------------------
724 @anchor{transrun}
725 @defvr {Optionsvariable} transrun
726 Standardwert: @code{true}
728 @c When @code{transrun} is @code{false} will cause the interpreted version of 
729 @c all functions to be run (provided they are still around) rather than the 
730 @c translated version.
732 Hat @code{transrun} den Wert @code{false}, werden die nicht-@"ubersetzten 
733 Versionen ausgef@"uhrt, falls diese noch vorhanden sind.  
734 Siehe @mrefdot{savedef}
736 @end defvr
738 @c IN WHAT CONTEXT IS tr_array_as_ref: false APPROPRIATE ??? NOT SEEING THE 
739 @c USEFULNESS HERE. ALSO, I GUESS WE SHOULD HAVE AN ITEM FOR 
740 @c translate_fast_arrays, ANOTHER CONFUSING FLAG ...
742 @c --- 05.01.2011 DK -----------------------------------------------------------
743 @anchor{tr_array_as_ref}
744 @defvr {Optionsvariable} tr_array_as_ref
745 Standardwert: @code{true}
747 @c If @code{translate_fast_arrays} is @code{false}, array references in Lisp 
748 @c code emitted by @code{translate_file} are affected by @code{tr_array_as_ref}.
749 @c When @code{tr_array_as_ref} is @code{true}, array names are evaluated,
750 @c otherwise array names appear as literal symbols in translated code.
752 Hat @code{translate_fast_arrays} den Wert @code{false}, werden Referenzen auf
753 Arrays in Lisp-Code von der Variablen @code{tr_array_as_ref} kontrolliert.  Hat
754 @code{tr_array_as_ref} den Wert @code{true}, werden Array-Namen ausgewertet.
756 @c @code{tr_array_as_ref} has no effect if @code{translate_fast_arrays} is 
757 @c @code{true}.
759 @code{tr_array_as_ref} hat keinen Effekt, wenn @code{translate_fast_arrays} den
760 Wert @code{true} hat.
762 @end defvr
764 @c WHY IS THIS FLAG NEEDED ??? UNDER WHAT CIRCUMSTANCES CAN TRANSLATION
765 @c OF A BOUND VARIABLE USED AS A FUNCTION GO WRONG ???
767 @c --- 05.01.2011 DK -----------------------------------------------------------
768 @anchor{tr_bound_function_applyp}
769 @defvr {Optionsvariable} tr_bound_function_applyp
770 Standardwert: @code{true}
772 @c When @code{tr_bound_function_applyp} is @code{true}, Maxima gives a warning 
773 @c if a bound variable (such as a function argument) is found being used as a 
774 @c function.
775    @c WHAT DOES THIS MEAN ??
776 @c @code{tr_bound_function_applyp} does not affect the code generated in such 
777 @c cases.
779 Hat @code{tr_bound_function_applyp} den Wert @code{true}, gibt Maxima eine
780 Warnung aus, wenn versucht wird, eine gebundene Variable als eine Funktion
781 verwendet werden soll.  @code{tr_bound_function_applyp} hat keinen Effekt auf
782 den generierten Code.
784 @c For example, an expression such as @code{g (f, x) := f (x+1)} will trigger
785 @c the warning message.
787 Zum Beispiel gibt ein Ausdruck der Form  @code{g (f, x) := f (x+1)} eine 
788 Warnung.
790 @end defvr
792 @c --- 05.01.2011 DK -----------------------------------------------------------
793 @anchor{tr_file_tty_messagep}
794 @defvr {Optionsvariable} tr_file_tty_messagesp
795 Standardwert: @code{false}
797 @c When @code{tr_file_tty_messagesp} is @code{true}, messages generated by 
798 @c @code{translate_file} during translation of a file are displayed on the 
799 @c console and inserted into the UNLISP file. When @code{false}, messages about 
800 @c translation of the file are only inserted into the UNLISP file.
802 Hat @code{tr_file_tty_messagesp} den Wert @code{true}, werden Meldungen die
803 von der Funktion @code{translate_file} w@"ahrend einer @"Ubersetzung generiert 
804 werden auch auf der Konsole ausgegeben.  Ansonsten werden Meldungen nur in die
805 Datei @code{.UNILISP} geschrieben.
807 @end defvr
809 @c THIS FLAG APPEARS TO HAVE NO EFFECT. SHOULD CUT OUT THIS ITEM AND RELATED 
810 @c CODE. NOTE THAT THERE IS CODE IN src/transf.lisp WHICH USES THIS FLAG BUT THE
811 @c MODE FLAG IS LOST SOMEWHERE ALONG THE WAY TO THE LISP OUTPUT FILE.
813 @c --- 05.01.2011 DK -----------------------------------------------------------
814 @anchor{tr_float_can_branch_complex}
815 @defvr {Optionsvariable} tr_float_can_branch_complex
816 Standardwert: @code{true}
818 @c Tells the Maxima-to-Lisp translator to assume that the functions @code{acos},
819 @c @code{asin}, @code{asec}, and @code{acsc} can return complex results.
821 Erkl@"art dem @"Ubersetzer, dass die Funktionen @code{acos}, @code{asin}, 
822 @code{asec} und @code{acsc} komplexe Werte zur@"uckgegeben k@"onnen.
824 @c TODO: DAS FOLGENDE NICHT UEBERSETZT.
826 @c The ostensible effect of @code{tr_float_can_branch_complex} is the following.
827 @c However, it appears that this flag has no effect on the translator output.
829 @c When it is @code{true} then @code{acos(x)} is of mode @code{any} even if 
830 @c @code{x} is of mode @code{float} (as set by @code{mode_declare}). When 
831 @c @code{false} then @code{acos(x)} is of mode @code{float} if and only if 
832 @c @code{x} is of mode @code{float}.
834 @end defvr
836 @c --- 05.01.2011 DK -----------------------------------------------------------
837 @anchor{tr_function_call_default}
838 @defvr {Optionsvariable} tr_function_call_default
839 Standardwert: @code{general}
841 @c @code{false} means give up and call @code{meval}, @code{expr} means assume 
842 @c Lisp fixed arg function.  @code{general}, the default gives code good for 
843 @c @code{mexprs} and @code{mlexprs} but not @code{macros}. @code{general} 
844 @c assures variable bindings are correct in compiled code.  In @code{general} 
845 @c mode, when translating F(X), if F is a bound variable, then it assumes that 
846 @c @code{apply (f, [x])} is meant, and translates a such, with apropriate 
847 @c warning. There is no need to turn this off.  With the default settings, no 
848 @c warning messages implies full compatibility of translated and compiled code 
849 @c with the Maxima interpreter.
851 @c TODO: DIE WERTE FALSE UND EXPR SIND NICHT WIRKLICH KLAR.
853 @code{false} bedeutet, gebe auf und rufe @code{meval} auf, @code{expr} bedeutet,
854 nehme Lisp-Argumente an.  @code{general}, der Standardwert, gibt Code der f@"ur
855 @code{MEXPRS}-Funktionen geeignet ist.  Wird Maxima-Code mit dem Standardwert
856 @code{general} @"ubersetzt, ohne dass Warnmeldungen ausgegeben werden, kann davon
857 ausgegangen werden, dass der @"ubersetzte und komplilierte Code kompatibel mit der
858 urspr@"unglichen Funktion ist.
860 @end defvr
862 @c --- 05.01.2011 DK -----------------------------------------------------------
863 @anchor{tr_numer}
864 @defvr {Optionsvariable} tr_numer
865 Standardwert: @code{false}
867 @c When @code{tr_numer} is @code{true}, @code{numer} properties are used for
868 @c atoms which have them, e.g. @code{%pi}.
870 Hat @code{tr_numer} den Wert @code{true}, wird die @code{numer}-Eigenschaft
871 von Symbolen vom @"Ubersetzer angewendet.
873 @end defvr
875 @c --- 05.01.2011 DK -----------------------------------------------------------
876 @anchor{tr_optimize_max_loop}
877 @defvr {Optionsvariable} tr_optimize_max_loop
878 Standardwert: 100
880 @c @code{tr_optimize_max_loop} is the maximum number of times the
881 @c macro-expansion and optimization pass of the translator will loop in
882 @c considering a form.  This is to catch macro expansion errors, and
883 @c non-terminating optimization properties.
885 @code{tr_optimize_max_loop} enth@"alt die maximale Anzahl an Durchg@"angen, um
886 Makros zu expandieren und den Code zu optimieren.  Damit werden unendliche
887 Schleifen des @"Ubersetzers vermieden.
889 @end defvr
891 @c --- 05.01.2011 DK -----------------------------------------------------------
892 @anchor{tr_semicompile}
893 @defvr {Optionsvariable} tr_semicompile
894 Standardwert: @code{false}
896 @c When @code{tr_semicompile} is @code{true}, @code{translate_file} and 
897 @c @code{compfile} output forms which will be macroexpanded but not compiled 
898 @c into machine code by the Lisp compiler.
900 Hat @code{tr_semicompile} den Wert @code{true}, geben die Funktionen 
901 @code{translate_file} und @code{compfile} Code aus, in dem Makrofunktionen
902 expandiert sind, der aber nicht kompliliert ist.
904 @end defvr
906 @c ARE ANY OF THESE OBSOLETE ??
908 @c --- 05.01.2011 DK -----------------------------------------------------------
909 @anchor{tr_state_vars}
910 @defvr {Systemvariable} tr_state_vars
911 Standardwert:
912 @verbatim
913 [transcompile, tr_semicompile, tr_warn_undeclared, tr_warn_meval,
914 tr_warn_fexpr, tr_warn_mode, tr_warn_undefined_variable,
915 tr_function_call_default, tr_array_as_ref,tr_numer]
916 @end verbatim
918 @c The list of the switches that affect the form of the translated output.
919    @c DOES THE GENERAL USER REALLY CARE ABOUT DEBUGGING THE TRANSLATOR ???
920 @c This information is useful to system people when trying to debug the 
921 @c translator.  By comparing the translated product to what should have been 
922 @c produced for a given state, it is possible to track down bugs.
924 Enth@"alt eine Liste der Schalter, die die @"Ubersetzung kontrollieren.
926 @end defvr
928 @c tr_warnings_get EXISTS AND FUNCTIONS AS ADVERTISED (SORT OF) -- 
929 @c RETURNS *tr-runtime-warned* WHICH HAS ONLY A FEW KINDS OF WARNINGS PUSHED 
930 @c ONTO IT; IT'S CERTAINLY NOT COMPREHENSIVE 
931 @c DO WE REALLY NEED THIS SLIGHTLY WORKING FUNCTION ??
933 @c --- 05.01.2011 DK -----------------------------------------------------------
934 @anchor{tr_warnings_get}
935 @deffn {Funktion} tr_warnings_get ()
937 @c Prints a list of warnings which have been given by the translator during the 
938 @c current translation.
940 Gebe die Liste der Warnungen aus, welche bei der letzten @"Ubersetzung erzeugt 
941 wurden.
943 @end deffn
945 @c --- 05.01.2011 DK -----------------------------------------------------------
946 @anchor{tr_warn_bad_function_calls}
947 @defvr {Optionsvariable} tr_warn_bad_function_calls
948 Standardwert: @code{true}
950 @c Gives a warning when function calls are being made which may not be correct 
951 @c due to improper declarations that were made at translate time.
953 Gebe Warnungen aus, wenn Funktionsaufrufe generiert werden, die m@"oglicherweise
954 nicht korrekt sind, aufgrund von ungeeigneten Deklarationen f@"ur die 
955 @"Ubersetzung.
957 @end defvr
959 @c --- 05.01.2011 DK -----------------------------------------------------------
960 @anchor{tr_warn_fexpr}
961 @defvr {Optionsvariable} tr_warn_fexpr
962 Standardwert: @code{compfile}
964 @c Gives a warning if any FEXPRs are encountered.  FEXPRs should not normally 
965 @c be output in translated code, all legitimate special program forms are 
966 @c translated.
968 Gebe Warnungen aus, wenn @code{FEXPR}-Ausdr@"ucke im @"ubersetzten Code 
969 auftreten.
971 @end defvr
973 @c --- 05.01.2011 DK -----------------------------------------------------------
974 @anchor{tr_warn_meval}
975 @defvr {Optionsvariable} tr_warn_meval
976 Standardwert: @code{compfile}
978 @c Gives a warning if the function @code{meval} gets called.  If @code{meval} 
979 @c is called that indicates problems in the translation.
981 Gebe Warnungen aus, wenn die Funktion @code{meval} aufgerufen wird.  Dies
982 signalisiert Probleme bei der @"Ubersetzung.
984 @end defvr
986 @c --- 05.01.2011 DK -----------------------------------------------------------
987 @anchor{tr_warn_mode}
988 @defvr {Optionsvariable} tr_warn_mode
989 Standardwert: @code{all}
991 @c Gives a warning when variables are assigned values inappropriate for their 
992 @c mode.
994 Gebe Warnungen aus, wenn Variablen Werte zugewiesen werden, die nicht zu dem
995 deklarierten Typ passen.
997 @end defvr
999 @c --- 05.01.2011 DK -----------------------------------------------------------
1000 @anchor{tr_warn_undeclared}
1001 @defvr {Optionsvariable} tr_warn_undeclared
1002 Standardwert: @code{compile}
1004 @c Determines when to send warnings about undeclared variables to the TTY.
1006 Kontrolliert, wann Warnungen @"uber nicht-deklarierte Variablen angezeigt werden
1007 sollen.
1009 @end defvr
1011 @c --- 05.01.2011 DK -----------------------------------------------------------
1012 @anchor{tr_warn_undedined_variable}
1013 @defvr {Optionsvariable} tr_warn_undefined_variable
1014 Standardwert: @code{all}
1016 @c Gives a warning when undefined global variables are seen.
1018 Gebe eine Warnung aus, wenn undefinierte globale Variablen auftreten.
1020 @end defvr
1022 @c --- End of file Translator.de.texi ------------------------------------------