
"Pedro" == Pedro Baltazar Vasconcelos
writes:
Pedro> On Wed, 17 Jan 2007 16:57:54 +0300
Pedro> Max Vasin
It does not enforce presence of required fields at type level. Also it
does not enforce that fields pages and year are Int. And I want to move as much checks to compile time as possible.
Pedro> You can combine the two solutions: a product-type of Pedro> required fields plus list of optional fields. You're right Pedro> that you lose the typing constraints on fields. I probabily Pedro> woudn't bother, but you might be able to recover that with Pedro> the type-classes or GADTs (?). I have only a very basic understading of what GADTs are :-( Pedro> But more important: it sounds to me like you have two Pedro> conflicting requirements: one the one hand you want to have Pedro> required fields (presumability those that were not Maybe Pedro> types) but on the other hand you want an "empty" book Pedro> (i.e. with "" for title, etc.). I want to get as strict type checking as possible while writing as little code handling Book as possible. The empty value is needed only to start with when analising external represenation. And as suggested by Colin DeVilbiss and Henning Thielemann it will be better to use undefined for required fields. -- WBR, Max Vasin.