summaryrefslogtreecommitdiff
path: root/next-lib/src/api/Symbolic.gf
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-10-06 12:49:13 +0000
committeraarne <aarne@cs.chalmers.se>2008-10-06 12:49:13 +0000
commite765b97fc483d5e737794a0aa90890ab2a1b2028 (patch)
treee3b558ba236ae9797ceb9be4e06c514abac81890 /next-lib/src/api/Symbolic.gf
parent394050d9f7d90f5b7a5905175bd51733048bf481 (diff)
simplified 1.5 by removing mathematical/
Diffstat (limited to 'next-lib/src/api/Symbolic.gf')
-rw-r--r--next-lib/src/api/Symbolic.gf48
1 files changed, 21 insertions, 27 deletions
diff --git a/next-lib/src/api/Symbolic.gf b/next-lib/src/api/Symbolic.gf
index 2a621cf9c..6ce8478b9 100644
--- a/next-lib/src/api/Symbolic.gf
+++ b/next-lib/src/api/Symbolic.gf
@@ -1,12 +1,11 @@
--1 Symbolic: Noun Phrases with mathematical symbols
-incomplete resource Symbolic = open
- Symbol, Syntax, PredefCnc in {
+incomplete resource Symbolic = open Symbol, Grammar in {
oper
symb : overload {
symb : Str -> NP ; -- x
- symb : Int -> NP ; -- 23
+ symb : Integer -> NP ; -- 23
symb : Float -> NP ; -- 0.99
symb : N -> Digits -> NP ; -- level 4
symb : N -> Card -> NP ; -- level four
@@ -14,49 +13,44 @@ incomplete resource Symbolic = open
symb : Det -> N -> Card -> NP ; -- the number four
symb : Det -> CN -> Card -> NP ; -- the even number four
symb : Det -> N -> Str -> Str -> NP ; -- the levels i and j
- symb : Det -> CN -> [Symb] -> NP ; -- the basic levels i, j, and k
- symb : Symb -> S ; -- A
- symb : Symb -> Card ; -- n
- symb : Symb -> Ord -- n'th
+ symb : Det -> CN -> [Symb] -> NP -- the basic levels i, j, and k
} ;
- mkSymb : Str -> Symb ;
- mkInt : Str -> PredefCnc.Int ;
- mkFloat : Str -> PredefCnc.Float ;
+ mkSymb : Str -> Symb ;
+ mkInteger : Predef.Int -> Integer ;
+ mkFloating : Predef.Float -> Floating ;
--.
symb = overload {
symb : Str -> NP
- = \s -> mkNP (SymbPN (mkSymb s)) ;
- symb : Int -> NP
- = \i -> mkNP (IntPN i) ;
- symb : Float -> NP
- = \i -> mkNP (FloatPN i) ;
+ = \s -> UsePN (SymbPN (mkSymb s)) ;
+ symb : Integer -> NP
+ = \i -> UsePN (IntPN i) ;
+ symb : Floating -> NP
+ = \i -> UsePN (FloatPN i) ;
symb : N -> Digits -> NP
- = \c,i -> CNNumNP (mkCN c) (mkCard i) ;
+ = \c,i -> CNNumNP (UseN c) (NumDigits i) ;
symb : N -> Card -> NP
- = \c,n -> CNNumNP (mkCN c) n ;
+ = \c,n -> CNNumNP (UseN c) n ;
symb : CN -> Card -> NP
= \c,n -> CNNumNP c n ;
symb : Det -> N -> Card -> NP
- = \d,n,x -> mkNP d (mkCN (mkCN n) (mkNP (NumPN x))) ;
+ = \d,n,x -> DetCN d (ApposCN (UseN n) (UsePN (NumPN x))) ;
symb : Det -> CN -> Card -> NP
- = \d,n,x -> mkNP d (mkCN n (mkNP (NumPN x))) ;
+ = \d,n,x -> DetCN d (ApposCN n (UsePN (NumPN x))) ;
symb : Det -> N -> Str -> Str -> NP
- = \c,n,x,y -> CNSymbNP c (mkCN n) (BaseSymb (mkSymb x) (mkSymb y)) ;
+ = \c,n,x,y -> CNSymbNP c (UseN n) (BaseSymb (mkSymb x) (mkSymb y)) ;
symb : Det -> CN -> [Symb] -> NP
- = CNSymbNP ;
- symb : Symb -> S = SymbS ;
- symb : Symb -> Card = SymbNum ;
- symb : Symb -> Ord = SymbOrd
-
+ = CNSymbNP
} ;
mkSymb : Str -> Symb = \s -> {s = s ; lock_Symb = <>} ;
- mkInt i = {s = i ; lock_Int = <>} ;
- mkFloat f = {s = f ; lock_Float = <>} ;
+ mkInteger i = {s = Predef.show Predef.Int i ; lock_Int = <>} ;
+ mkFloating f = {s = Predef.show Predef.Float f ; lock_Float = <>} ;
+ Integer : Type = {s : Str ; lock_Int : {}} ;
+ Floating : Type = {s : Str ; lock_Float : {}} ;
}