Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
language:introduction [2022/05/13 12:30] rajitlanguage:introduction [2025/09/04 11:09] (current) – [Loops and conditionals] rajit
Line 92: Line 92:
 parser was expecting. Error messages are accompanied by the file name, parser was expecting. Error messages are accompanied by the file name,
 line number, and column number of the item that resulted in the error. line number, and column number of the item that resulted in the error.
 +
 +The variable names ''self'' and ''selfack'' are reserved. They are used to support
 +ACT language features like functions and user-defined types.
  
 The names in the port list of a user-defined type are the only parts of The names in the port list of a user-defined type are the only parts of
Line 246: Line 249:
 The parentheses are used to group the body of the loop. ''i'' is The parentheses are used to group the body of the loop. ''i'' is
 the dummy variable, and it ranges from zero to eight in this the dummy variable, and it ranges from zero to eight in this
-example. The '';'' is a separator, and separates each instance of +example. In general if only one integer is specified for
-the body of the loop.  In general if only one integer is specified for+
 the range, the variable ranges from zero to one less than the integer. the range, the variable ranges from zero to one less than the integer.
 +This is a special case of a more general [[syntacticreplication|syntactic replication]] construct
 +that can be used in many contexts.
  
 The conditional statement uses the guarded command notation. They are The conditional statement uses the guarded command notation. They are
Line 337: Line 341:
  
   namespace lib {   namespace lib {
-       export defchan a1of2 chan(bool) (bool d0,d1,a) { ... } +       export defchan a1of2 <: chan(bool) (bool d0,d1,a) { ... } 
   }   }
  
Line 355: Line 359:
  
   namespace lib {   namespace lib {
-       export defchan a1of2 chan(bool) (bool d0,d1,a) { ... }+       export defchan a1of2 <: chan(bool) (bool d0,d1,a) { ... }
   }   }
  
Line 375: Line 379:
  
   export namespace lib {   export namespace lib {
-       export defchan a1of2 chan(bool) (bool d0,d1,a) { ... }+       export defchan a1of2 <: chan(bool) (bool d0,d1,a) { ... }
   }   }