gf-3.2.9: gf-book/examples/chapter7/Map.gf
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 ;
}