> Why do datatype declarations have to be repeated in the implementation file > (.ur) when they are already specified in the interface file (.urs)? They serve different purposes, in the .urs file they are interface declarations, in the .ur file they are implementation declarations, this is how I see them. - Gergely