From 484c4ef336617fc1e817ef168757d9f4d1abdcdb Mon Sep 17 00:00:00 2001 From: aarne Date: Sat, 20 Oct 2007 11:34:52 +0000 Subject: started resource implementation of query language --- examples/tutorial/semantics/BaseI.gf | 66 ++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 examples/tutorial/semantics/BaseI.gf (limited to 'examples/tutorial/semantics/BaseI.gf') diff --git a/examples/tutorial/semantics/BaseI.gf b/examples/tutorial/semantics/BaseI.gf new file mode 100644 index 000000000..23b4fbcb8 --- /dev/null +++ b/examples/tutorial/semantics/BaseI.gf @@ -0,0 +1,66 @@ +--# -path=.:prelude:present + +concrete BaseEng of Base = open Syntax, (G = Grammar), Symbolic, LexBase in { + +flags lexer=literals ; unlexer=text ; + +lincat + Question = Phr ; + Answer = Phr ; + S = Cl ; + NP = NP ; + PN = NP ; + CN = CN ; + AP = AP ; + A2 = A2 ; + Conj = Conj ; + ListPN = ListNP ; +lin + PredAP = mkCl ; + + ComplA2 = mkAP ; + + ModCN = mkCN ; + +--- ConjS = mkS ; + ConjAP = mkAP ; + ConjNP = mkNP ; + + UsePN p = p ; + Every = mkNP every_Det ; + Some = mkNP someSg_Det ; +--- None = mkNP noSg_Det ; --- + + And = and_Conj ; + Or = or_Conj ; + + UseInt = symb ; + + Number = mkCN number_N ; + + Even = mkAP even_A ; + Odd = mkAP odd_A ; + Prime = mkAP prime_A ; + Equal = mkA2 equal_A2 ; + Greater = mkA2 greater_A2 ; + Smaller = mkA2 smaller_A2 ; + Divisible = mkA2 divisible_A2 ; + + Sum pns = mkNP defSgDet (mkCN sum_N2 (mkNP and_Conj pns)) ; +--- Product = prefixSS ["the product of"] ; +--- GCD = prefixSS ["the greatest common divisor of"] ; + +--- WhatIs = prefixSS ["what is"] ; +--- WhichAre cn ap = ss ("which" ++ cn.s ++ "is" ++ ap.s) ; ---- are + QuestS s = mkPhr (mkQCl s) ; + + Yes = yes_Phr ; + No = no_Phr ; + + Value np = mkPhr (mkUtt np) ; + Many list = list ; + + BasePN = G.BaseNP ; + ConsPN = G.ConsNP ; + +} -- cgit v1.2.3