home *** CD-ROM | disk | FTP | other *** search
- ! ><HopeProgs$Dir>.SimpleLsts !
- ! !
- !------------------------------------------!
- ! !
- ! This is a collection of simple Hope !
- ! functions over lists. !
- ! !
- !------------------------------------------!
-
-
-
-
-
-
- dec numlist : num -> list ( num ) ;
- --- numlist ( 1 )
- <= [ 1 ] ;
- --- numlist ( n )
- <= ( n :: numlist ( ( n - 1 ) ) ) ;
-
-
-
-
- dec sumlist : list ( num ) -> num ;
- --- sumlist ( nil )
- <= 0 ;
- --- sumlist ( ( h :: t ) )
- <= ( h + sumlist ( t ) ) ;
-
-
-
-
-
- dec append : list(alpha) # list(alpha) -> list(alpha);
- --- append(nil , Second)
- <= Second;
- --- append( (HeadFirst::TailFirst) , Second)
- <= HeadFirst :: append(TailFirst , Second);
-
-
-
- dec ReverseList : list(alpha) -> list(alpha);
- --- ReverseList nil
- <= nil;
- --- ReverseList(Head :: Tail)
- <= append(ReverseList(Tail) , [Head]);
-
-