[BACK]Return to dr.sm1 CVS log [TXT][DIR] Up to [local] / OpenXM / src / kan96xx / Kan

Diff for /OpenXM/src/kan96xx/Kan/dr.sm1 between version 1.1 and 1.5

version 1.1, 1999/10/08 02:12:02 version 1.5, 2000/12/10 03:33:46
Line 1 
Line 1 
   % $OpenXM: OpenXM/src/kan96xx/Kan/dr.sm1,v 1.4 2000/06/15 07:33:29 takayama Exp $
 %% dr.sm1 (Define Ring) 1994/9/25, 26  %% dr.sm1 (Define Ring) 1994/9/25, 26
 %% This file is error clean.  %% This file is error clean.
   
 @@@.quiet {   }  @@@.quiet {   }
 { (macro package : dr.sm1,   9/26,1995 --- Version 9/8, 1999. ) message } ifelse  { (macro package : dr.sm1,   9/26,1995 --- Version 12/10, 2000. ) message } ifelse
   
 /ctrlC-hook {  /ctrlC-hook {
 %%% define your own routing in case of error.  %%% define your own routing in case of error.
Line 1527 
Line 1528 
     /obj arg1 def      /obj arg1 def
     obj isArray      obj isArray
     {      {
        ( [ )         [(LeftBracket)] system_variable %%( [ )
        obj {toString.tmp2} map /r set         obj {toString.tmp2} map /r set
        /n r length 1 sub def         /n r length 1 sub def
        [0 1  n  {         [0 1  n  {
Line 1539 
Line 1540 
           ifelse            ifelse
         } for          } for
        ] aload length cat_n         ] aload length cat_n
        ( ] )         [(RightBracket)] system_variable %%( ] )
        3 cat_n         3 cat_n
      }       }
      {       {
Line 3027  newline
Line 3028  newline
    arg1     arg1
 } def  } def
   
   /distraction2* {
     /arg1 set
     [/in-distraction2* /aa /f /vlist /xlist /dlist /slist ] pushVariables
     [(CurrentRingp)] pushEnv
     [
        /aa arg1 def
        /f aa 0 get def
        /vlist aa 1 get def
        /xlist aa 2 get def
        /dlist aa 3 get def
        /slist aa 4 get def
        vlist isArray
        {
           vlist { toString } map   /vlist set
        }
        {
           vlist toString to_records  /vlist set
         } ifelse
        xlist isArray
        {
           xlist { toString } map   /xlist set
        }
        {
           xlist toString to_records  /xlist set
         } ifelse
        slist isArray
        {
           slist { toString } map   /slist set
        }
        {
           slist toString to_records  /slist set
         } ifelse
        [vlist from_records ring_of_differential_operators 0] define_ring pop
        f toString .
        xlist { . } map
        dlist { toString . } map
        slist { toString . } map
        distraction2 /arg1 set
     ] pop
     popEnv
     popVariables
     arg1
   } def
   
 /message-quiet  {  /message-quiet  {
   @@@.quiet { pop } { message } ifelse    @@@.quiet { pop } { message } ifelse
 } def  } def
Line 3487  $ [ff ff] fromVectors :: $ 
Line 3532  $ [ff ff] fromVectors :: $ 
 [(nl)  [(nl)
 [(nl is the newline character.)  [(nl is the newline character.)
  $Example: [(You can break line) nl (here.)] cat message$   $Example: [(You can break line) nl (here.)] cat message$
   ]] putUsages
   
   /to_int {
     /arg1 set
     [/to-int /ob /ans] pushVariables
     [
       /ob arg1 def
       /ans ob def
       ob isArray {
         ob {to_int} map /ans set
         /LLL.to_int goto
       } {  } ifelse
       ob isInteger {
         ob (universalNumber) dc /ans set
         /LLL.to_int goto
       } {  } ifelse
       /LLL.to_int
       /arg1 ans def
     ] pop
     popVariables
     arg1
   } def
   [(to_int)
   [(obj to_int obj2)
    (All integers in obj are changed to universalNumber.)
    (Example: /ff [1 2 [(hello) (0).]] def  ff { tag } map ::)
    (         ff to_int { tag } map :: )
   ]] putUsages
   
   /define_ring_variables {
     [/in-define_ring_variables /v /p /v0] pushVariables
     [
        /v getVariableNames def
        /v0 v def
        v { dup /p set (/) 2 1 roll ( $) p ($. def ) } map cat
        /v set
   %     v message
        [(parse) v] extension
     ] pop
     popVariables
   } def
   [(define_ring_variables)
   [(It binds  a variable <<a>> in the current ring to the sm1 variable <<a>>.)
    (For example, if x is a variable in the current ring, it defines the sm1)
    (variable x by /x (x) def)
   ]] putUsages
   
   /boundp {
     /arg1 set
     [/a /ans] pushVariables
     [
       /a arg1 def
       [(parse) [(/) a ( load tag 0 eq { /ans 0 def } )
                       (               { /ans 1 def } ifelse )] cat ] extension
       /arg1 ans def
     ] pop
     popVariables
     arg1
   } def
   [(boundp)
    [( a boundp b)
     (string a, b is 0 or 1.)
     (If the variable named << a >> is bounded to a value,)
     (it returns 1 else it returns 0.)
     $Example: (hoge) boundp ::$
 ]] putUsages  ]] putUsages
   
 ;  ;

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.5

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