22 lines
		
	
	
		
			277 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			22 lines
		
	
	
		
			277 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								:- object(square,
							 | 
						||
| 
								 | 
							
								    instantiates(class),
							 | 
						||
| 
								 | 
							
								    specializes(regular_polygon)).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									:- info([
							 | 
						||
| 
								 | 
							
										author is 'Paulo Moura',
							 | 
						||
| 
								 | 
							
										version is 1.0,
							 | 
						||
| 
								 | 
							
										date is 2003/2/3,
							 | 
						||
| 
								 | 
							
										comment is 'Geometric square.']).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									nsides(4).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									area(Area) :-
							 | 
						||
| 
								 | 
							
										::side(Side),
							 | 
						||
| 
								 | 
							
										Area is Side*Side.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								:- end_object.
							 |