REBOL 3 Docs Guide Concepts Functions Datatypes Errors
  TOC < Back Next >   Updated: 3-Aug-2010 Edit History  

REBOL 3 Functions: evoke

evoke  chant

Special guru meditations. (Not for beginners.)

Arguments:

chant [word! block! integer!] - Single or block of words ('? to list)

Description

This is useful for analyzing hard REBOL crashes that lead to assertion errors and other crashes that aren't related to your script errors, but directly exposes bugs in the REBOL kernel. This is helpful information for REBOL Technologies to fix these bugs.

To enable this kind of analysis, have this at the beginning of your program:

secure [debug allow] 
evoke 'crash-dump

If REBOL crashes, you will get a stack dump. You can force a crash using:

evoke 'crash
--REBOL Kernel Dump--
Evaluator:
    Cycles:  110001
    Counter: 4907
    Dose:    10000
    Signals: #00000000
    Sigmask: #FFFFFFFF
    DSP:     5
    DSF:     1
Memory/GC:
    Ballast: 1709360
    Disable: 1
    Protect: 1
    Infants: 1

STACK[5] evoke[1] native!
        chant: crash

Special Notes

Common for all operations with evoke is that debugging must be allowed using:

secure [debug allow]

evoke also allows other debug output, mostly used internally by REBOL Technologies to help test REBOL 3.

The function can also be used to monitor the garbage collector:

evoke 'watch-recycle

or to monitor object copying:

evoke 'watch-obj-copy

or to set the stack size:

evoke 'stack-size 2000000

or to debug delect information:

evoke 'delect


  TOC < Back Next > REBOL.com - WIP Wiki Feedback Admin