I want to improve the way I code up my procedures. For instance I want to code them safe in the sense that they only accept the arguments when they have the correct type.
I know that in principle this is done with the double-colon operator in the following way:
(Q1)Now, given that my argument is of a type such as set, list, Array, etc.:
(a) How would I specify the allowed types of the elements of that list (for all elements, and for specific ones)? And if the element of the list is a list again, how would I specify the type of that's elements? and so forth..
(b) How would I specify the allowed size of the list, Array, etc. ?
(Q2) How do I specify the types of more than one output, if my proc returns more than one value?
(Q3) I know that there are special integer types, such as nonnegint, posint, negint. Is there also a way to specify that the ineger (or float) argument has to be greater than some given value, e.g. >2, or that it has to lie between two values, or out of a given set?
Thats all for now. Thanks for your help guys! : )