generic data specification parameter elem using ref node := mknode( . .left : ref; . .val : elem; . .right : ref); variables nd : node; end generic data specification