Subject: Re: Sample

From: Cheng Xu <[email-masked]>
Date: Mon, 6 Nov 1995 22:16:56 +0800 (EAT)

Hi, Guansong,

Message received. Sorry for not reply in no time.

> There is a problem, where I leaved unsolved. I don't know how to complete the
> FORALL stat. Should I add a Contrl-end to it? If not how about the relation
> between Forall stat and Forall-assignment_stmt?

For FORALL stat can only be followed by a assignment stat, so we should 
not add a control-end to it. Because we have defined 2 different VARIANT 
for the FORALL(the FORALL_STATEMENT and the FORALL_CONSTRUCT), we will know 
the assignment stat, following a FORALL with variant of FORALL_STATEMENT, must
be the body of the FORALL stmt. Do you think it is right?

> It's not a serious question, but I think it's better to make it clear how
> ExpList is used in Sage++ system, so there won't trouble in the future.

When we analyzed the working process of f2dep, we found Sage++ only use 
Explist to declare the Variables. But we think Explist should be used to
specify the structure of expression in C program  according to the 
document along with Sage++ distribution(../doc/oonski94.ps). So, in Beida's
definition, ExpList is used to represent the parentheses, e.g.,

	(((a+b)+c)+d)

	will be 

			(Explist)	;the subexpression constructed
			   |		;by OP in Explist's left pointer 
		      |----+-----|	;should be enclosed by a parentheses
		      |	         |
		     (+)        
		      |
                 |----+-----|
                 |          |
              (Explist)    (a)
                    |
              |-----+-----|
              |           |
             (+)
              |
       |------+-----|
       |            |
     (Explist)     (b)
            |
      |-----+------|
      |            |
     (+)
      |
 |----+----|
 |         |
(d)       (c)                     

 	but not( the way Sage++ does f2dep) 

		(+)
		 |
           |-----|-----|
           |           |
          (+)         (a)
           |
       |---+---|
       |       |
      (+)      (b)
       |
    |--+---|
    |      |
   (d)    (c)

     So, Sage++ is not able to parse and then unparse above expression
to original form. (What Prof. Li told Beida to do is to represent 
the source program fainthfully)

> Why the email I send to  Tshinghua were all sent back?

Because Tsinghua is rebuilding their Campus Network and try to 
improve Tsinghua campus network's bandwidth.

Regards

Chengxu