added practicum files, updated gitignore
[fp1415.git] / files / practicum / StamBoomPrint.icl
1 module StamBoomPrint
2
3 import StdEnv
4 import StamBoom
5 import GenTreePrint
6 import TextCompose
7
8 Start = toString Baggins_of_Hobbiton
9
10 /** source family tree Bilbo Baggins:
11 http://www.frodoforever.com/tree.php
12 (date december 10 2011)
13 */
14 Baggins_of_Hobbiton
15 = Node (Couple (m "Balbo Baggins") (f "Berylla Boffin"))
16 [Node (Couple (m "Mungo Baggins") (f "Laura Grubb"))
17 [Node (Couple (m "Bungo Baggins") (f "Belladonna Took"))
18 [Leaf (Single (m "Bilbo Baggins"))
19 ]
20 ,Node (Couple (f "Belba Baggins") (m "Rudigar Bolger"))
21 []
22 ,Node (Couple (m "Longo Baggins") (f "Camellia Sackville"))
23 [Node (Couple (m "Otho Sackville-Baggins") (f "Lobelia Bracegirdle"))
24 [Leaf (Single (m "Lotho"))
25 ]
26 ]
27 ,Node (Couple (f "Linda Baggins") (m "Bodo Proudfoot"))
28 [Leaf (Single (m "Odo Proudfoot"))
29 ]
30 ,Node (Couple (m "Bingo Baggins") (f "Chica Chubb"))
31 [Node (Couple (m "Falco Chubb-Baggins") unknown)
32 [Node (Couple (f "Poppy Chubb-Baggins") (m "Filibert Bolger"))
33 []
34 ]
35 ]
36 ]
37 ,Node (Couple (f "Pansy Baggins") (m "Fastolph Bolger"))
38 []
39 ,Node (Couple (m "Ponto Baggins") (f "Mimosa Bunce"))
40 [Node (Couple (f "Rosa Baggins") (m "Hildigrim Took"))
41 []
42 ,Node (Couple (m "Polo Baggins") unknown)
43 [Node (Couple (m "Posco Baggins") (f "Gilly Brownlock"))
44 [Node (Couple (m "Ponto Baggins") unknown)
45 [Leaf (Single (f "Angelica Baggins"))]
46 ,Leaf (Single (m "Porto Baggins"))
47 ,Node (Couple (f "Peony Baggins") (m "Milo Burrows"))
48 [Leaf (Single (m "Mosco Baggins"))
49 ,Leaf (Single (m "Moro Baggins"))
50 ,Leaf (Single (f "Myrtle Baggins"))
51 ,Leaf (Single (m "Minto Baggins"))
52 ]
53 ]
54 ,Node (Couple (f "Prisca Baggins") (m "Wilibald Bolger"))
55 []
56 ]
57 ]
58 ,Node (Couple (m "Largo Baggins") (f "Tanta Hornblower"))
59 [Node (Couple (m "Fosco Baggins") (f "Ruby Bolger"))
60 [Leaf (Single (f "Dora Baggins"))
61 ,Node (Couple (m "Drogo Baggins") (f "Primula Brandybuck"))
62 [Leaf (Single (m "Frodo Baggins"))
63 ]
64 ,Node (Couple (m "Dudo Baggins") unknown)
65 [Node (Couple (f "Daisy Baggins") (m "Griffo Boffin"))
66 []
67 ]
68 ]
69 ]
70 ,Node (Couple (f "Lily Baggins") (m "Togo Goodbody"))
71 []
72 ]
73 where
74 unknown = m "?"
75
76 instance zero (a,b,c) | zero a & zero b & zero c where zero = (zero,zero,zero)
77
78 p (d,m,y) gender name = Person (DoB y m d) gender name
79 m name = p zero Male name
80 f name = p zero Female name