`newstruct'
-----------

newstruct(NAME)
     :: $B9=B$BNL>$,(B NAME$B$N9=B$BN$r@8@.$9$k(B.

RETURN
     $B9=B$BN(B

NAME
     $BJ8;zNs(B

   * $BL>A0$,(B NAME $B$G$"$k9=B$BN$r@8@.$9$k(B.

   * $B$"$i$+$8$a(B, NAME $B$J$k9=B$BN$,Dj5A$5$l$F$$$J$1$l$P$J$i$J$$(B.

   * $B9=B$BN$N3F%a%s%P$O1i;;;R(B `->' $B$K$h$jL>A0$G%"%/%;%9$9$k(B.
     $B%a%s%P$,9=B$BN$N>l9g(B, $B99$K(B `->' $B$K$h$k;XDj$rB3$1$k$3$H$,$G$-$k(B.

     [0] struct list {h,t};
     0
     [1] A=newstruct(list);
     {0,0}
     [2] A->t = newstruct(list);
     {0,0}
     [3] A;
     {0,{0,0}}
     [4] A->h = 1;
     1
     [5] A->t->h = 2;
     2
     [6] A->t->t = 3;
     3
     [7] A;
     {1,{2,3}}

$B;2>H(B
     *Note `arfreg': arfreg, *Note `$B9=B$BNDj5A(B': $B9=B$BNDj5A(B

