[BACK]Return to db.k CVS log [TXT][DIR] Up to [local] / OpenXM / src / k097 / debug

Annotation of OpenXM/src/k097/debug/db.k, Revision 1.1.1.1

1.1       maekawa     1:
                      2: if (K00_verbose) {
                      3:   Println(" debug/db.k (db.ccc), 1997, 3/2 (Sun) : checking debug functions of kxx");
                      4:   Println(" Type in test0(). ");
                      5: }
                      6:
                      7: sm1(" /pushVariables {localVariables}  def ");
                      8: sm1(" /popVariables {restoreVariables} def ");
                      9: if (K00_verbose) {
                     10:   Println(" Overloaded on pushVariables and popVariables.");
                     11: }
                     12: sm1(" [(CatchCtrlC) 1] system_variable ");
                     13: sm1(" [(Strict) 1] system_variable ");
                     14: if (K00_verbose) {
                     15:   Println(" ctrl-C signal is caught in KSexecuteString() and <<Warning>> is regarded as an error.");
                     16: }
                     17:
                     18: def test0() {
                     19:   sm1(" [(ErrorMessageMode) 2] system_variable ");
                     20:   sm1(" [(WarningMessageMode) 2] system_variable ");
                     21:   fib(15);
                     22:   sm1(" db.where.es ");  /* This line will not be executed. */
                     23: }
                     24:
                     25: def void Where() {
                     26:   Println("CurrentContext is ...");
                     27:   sm1(" [(CurrentContextp)] system_variable {message} primmsg ");
                     28:   Println("VariableStack trace is....");
                     29:   sm1(" db.where ");
                     30:   Println("DebugStack trace is ....");
                     31:   sm1(" db.where.ds ");
                     32:   Println("To clear VariableStack, DebugStack and ErrorStack, type in Cleards().");
                     33: }
                     34:
                     35: def void Cleards() {
                     36:   Print("Clearing DebugStack and ErrorStack...");
                     37:   sm1(" db.clear.ds db.clear.es ");
                     38:   Println(" ");
                     39:   Print("Restoring variables....");
                     40:   sm1(" db.restore  ");
                     41:   sm1(" [  ] localVariables ");
                     42:   /* push [ ] for this function, otherwise this function exits with error.*/
                     43:   Println("Done");
                     44: }
                     45:
                     46: def fib(n) {
                     47:   local ans,a,b;
                     48:   Print("fib of "); Println(n);
                     49:   if (n < 2) {return(1);}
                     50:   a = n-1; b = n-2;
                     51:   if (a == 11) {
                     52:     a[i] = 2;  /* We cause an error. */
                     53:   }
                     54:   ans = fib(a) + fib(b);
                     55:   return(ans);
                     56: }
                     57:
                     58:
                     59:
                     60:
                     61:

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>