diff options
| author | aarne <aarne@chalmers.se> | 2011-01-11 15:46:43 +0000 |
|---|---|---|
| committer | aarne <aarne@chalmers.se> | 2011-01-11 15:46:43 +0000 |
| commit | e7439d65b0e153434d3acc07df6e2a0972ee79ca (patch) | |
| tree | 36716eec18256eeb600b4a552d9cc80f8ad7f16f /gf-book/examples/chapter7 | |
| parent | 276327f7f264e770478a6d8c6e683266505b0a55 (diff) | |
gf-book web page index and toc
Diffstat (limited to 'gf-book/examples/chapter7')
| -rw-r--r-- | gf-book/examples/chapter7/Map.gf | 10 | ||||
| -rw-r--r-- | gf-book/examples/chapter7/MapEng.gf | 17 | ||||
| -rw-r--r-- | gf-book/examples/chapter7/Query.gf | 12 | ||||
| -rw-r--r-- | gf-book/examples/chapter7/QueryEng.gf | 13 | ||||
| -rw-r--r-- | gf-book/examples/chapter7/QueryFin.gf | 13 |
5 files changed, 65 insertions, 0 deletions
diff --git a/gf-book/examples/chapter7/Map.gf b/gf-book/examples/chapter7/Map.gf new file mode 100644 index 000000000..52deebb87 --- /dev/null +++ b/gf-book/examples/chapter7/Map.gf @@ -0,0 +1,10 @@ +abstract Map = { +flags startcat = Query ; +cat + Query ; Input ; Place ; Click ; +fun + GoFromTo : Place -> Place -> Input ; + ThisPlace : Click -> Place ; + QueryInput : Input -> Query ; + ClickCoord : Int -> Int -> Click ; +} diff --git a/gf-book/examples/chapter7/MapEng.gf b/gf-book/examples/chapter7/MapEng.gf new file mode 100644 index 000000000..fee0b502c --- /dev/null +++ b/gf-book/examples/chapter7/MapEng.gf @@ -0,0 +1,17 @@ +concrete MapEng of Map = { +lincat + Query = {s : Str} ; + Input, Place = {s : Str ; p : Str} ; + Click = {p : Str} ; +lin + GoFromTo x y = { + s = "I want to go from" ++ x.s ++ "to" ++ y.s ; + p = x.p ++ y.p + } ; + ThisPlace c = { + s = "this place" ; + p = c.p + } ; + QueryInput i = {s = i.s ++ ";" ++ i.p} ; + ClickCoord x y = {p = "(" ++ x.s ++ "," ++ y.s ++ ")"} ; +} diff --git a/gf-book/examples/chapter7/Query.gf b/gf-book/examples/chapter7/Query.gf new file mode 100644 index 000000000..b6f83e357 --- /dev/null +++ b/gf-book/examples/chapter7/Query.gf @@ -0,0 +1,12 @@ +abstract Query = { + flags startcat=Question ; + cat + Answer ; Question ; Object ; + fun + Even : Object -> Question ; + Odd : Object -> Question ; + Prime : Object -> Question ; + Number : Int -> Object ; + Yes : Answer ; + No : Answer ; +} diff --git a/gf-book/examples/chapter7/QueryEng.gf b/gf-book/examples/chapter7/QueryEng.gf new file mode 100644 index 000000000..cc14d5eb7 --- /dev/null +++ b/gf-book/examples/chapter7/QueryEng.gf @@ -0,0 +1,13 @@ +concrete QueryEng of Query = { + lincat + Answer, Question, Object = Str ; + lin + Even = pred "even" ; + Odd = pred "odd" ; + Prime = pred "prime" ; + Number i = i.s ; + Yes = "yes" ; + No = "no" ; + oper + pred : Str -> Str -> Str = \f,x -> "is" ++ x ++ f ; +} diff --git a/gf-book/examples/chapter7/QueryFin.gf b/gf-book/examples/chapter7/QueryFin.gf new file mode 100644 index 000000000..b3461e34a --- /dev/null +++ b/gf-book/examples/chapter7/QueryFin.gf @@ -0,0 +1,13 @@ +concrete QueryFin of Query = { + lincat + Answer, Question, Object = Str ; + lin + Even = pred "parillinen" ; + Odd = pred "pariton" ; + Prime = pred "alkuluku" ; + Number i = i.s ; + Yes = "kyllä" ; + No = "ei" ; + oper + pred : Str -> Str -> Str = \f,x -> "onko" ++ x ++ f ; +} |
