DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(guile.info.gz) Examples of option use

Info Catalog (guile.info.gz) Evaluator trap options (guile.info.gz) Runtime Options
 
 33.3.8 Examples of option use
 -----------------------------
 
 Here is an example of a session in which some read and debug option
 handling procedures are used.  In this example, the user
 
   1. Notices that the symbols `abc' and `aBc' are not the same
 
   2. Examines the `read-options', and sees that `case-insensitive' is
      set to "no".
 
   3. Enables `case-insensitive'
 
   4. Verifies that now `aBc' and `abc' are the same
 
   5. Disables `case-insensitive' and enables debugging `backtrace'
 
   6. Reproduces the error of displaying `aBc' with backtracing enabled
      [FIXME: this last example is lame because there is no depth in the
      backtrace.  Need to give a better example, possibly putting
      debugging option examples in a separate session.]
 
      guile> (define abc "hello")
      guile> abc
      "hello"
      guile> aBc
      ERROR: In expression aBc:
      ERROR: Unbound variable: aBc
      ABORT: (misc-error)
 
      Type "(backtrace)" to get more information.
      guile> (read-options 'help)
      keywords	#f	Style of keyword recognition: #f or 'prefix
      case-insensitive	no	Convert symbols to lower case.
      positions	yes	Record positions of source code expressions.
      copy		no	Copy source code expressions.
      guile> (debug-options 'help)
      stack		20000	Stack size limit (0 = no check).
      debug		yes	Use the debugging evaluator.
      backtrace	no	Show backtrace on error.
      depth		20	Maximal length of printed backtrace.
      maxdepth	1000	Maximal number of stored backtrace frames.
      frames		3	Maximum number of tail-recursive frames in backtrace.
      indent		10	Maximal indentation in backtrace.
      backwards	no	Display backtrace in anti-chronological order.
      procnames	yes	Record procedure names at definition.
      trace		no	*Trace mode.
      breakpoints	no	*Check for breakpoints.
      cheap		yes	*Flyweight representation of the stack at traps.
      guile> (read-enable 'case-insensitive)
      (keywords #f case-insensitive positions)
      guile> aBc
      "hello"
      guile> (read-disable 'case-insensitive)
      (keywords #f positions)
      guile> (debug-enable 'backtrace)
      (stack 20000 debug backtrace depth 20 maxdepth 1000 frames 3 indent 10 procnames cheap)
      guile> aBc
 
      Backtrace:
      0* aBc
 
      ERROR: In expression aBc:
      ERROR: Unbound variable: aBc
      ABORT: (misc-error)
      guile>
 
Info Catalog (guile.info.gz) Evaluator trap options (guile.info.gz) Runtime Options
automatically generated byinfo2html