From a7d7542dc646a5fd124ef71e71ce260889f1701b Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Tue, 2 Feb 2016 19:24:50 +0100 Subject: Moved to 1415 directory --- 1415/files/practicum/StamBoom.dcl | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 1415/files/practicum/StamBoom.dcl (limited to '1415/files/practicum/StamBoom.dcl') diff --git a/1415/files/practicum/StamBoom.dcl b/1415/files/practicum/StamBoom.dcl new file mode 100644 index 0000000..b8bf99e --- /dev/null +++ b/1415/files/practicum/StamBoom.dcl @@ -0,0 +1,27 @@ +definition module StamBoom + +import GenTree + +:: FamilyTree :== GenTree Couple Single +:: Couple = Couple Person Person +:: Single = Single Person +:: Person = Person DateOfBirth Gender String +:: Gender = Male | Female +:: DateOfBirth = DoB Year Month Day +:: Year :== Int +:: Month :== Int +:: Day :== Int + +instance < DateOfBirth +instance == DateOfBirth +instance == Couple +instance == Person +instance == Gender + +okFamilyTree :: FamilyTree -> Bool +rootAncestor :: FamilyTree -> Person +inFamilyTree :: Person FamilyTree -> Bool +marry :: Person Person FamilyTree -> FamilyTree +addChild :: Person Couple FamilyTree -> FamilyTree +children :: Person FamilyTree -> [Person] +offspring :: Person FamilyTree -> [Person] -- cgit v1.2.3