mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 11:42:49 -06:00
rewrote App so that it just inherits Translate and excludes some functions. This minimizes the duplication of code between Translate and App. Also added some functions, which make App 15% slower but increase the coverage and quality. This trade-off has to be studied further.
This commit is contained in:
@@ -1,70 +1,47 @@
|
||||
--# -path=.:src/chunk:src/finnish/stemmed:src/finnish:src/api:src/translator:../examples/phrasebook/gfos
|
||||
|
||||
concrete AppFin of App =
|
||||
TenseX,
|
||||
NounFin - [
|
||||
PPartNP,
|
||||
UsePron, PossPron -- Fin specific: replaced by variants with prodrop
|
||||
],
|
||||
AdjectiveFin,
|
||||
NumeralFin,
|
||||
SymbolFin [
|
||||
PN, Symb, String, CN, Card, NP, MkSymb, SymbPN, CNNumNP
|
||||
],
|
||||
ConjunctionFin,
|
||||
VerbFin [
|
||||
UseV,ComplVV,SlashV2a,ComplSlash,UseComp,CompAP,CompNP,CompAdv,CompCN
|
||||
,AdvVP,AdVVP
|
||||
],
|
||||
AdverbFin,
|
||||
PhraseFin,
|
||||
SentenceFin [
|
||||
PredVP,SlashVP,ImpVP,AdvS,
|
||||
UseCl,UseQCl,UseSlash,SSubjS,UseRCl
|
||||
],
|
||||
QuestionFin - [
|
||||
ComplSlashIP,AdvQVP,AddAdvQVP,QuestQVP
|
||||
],
|
||||
RelativeFin,
|
||||
IdiomFin [
|
||||
NP, VP, Tense, Cl, ProgrVP, ExistNP,
|
||||
neutr, sjalv
|
||||
],
|
||||
---- ConstructionFin,
|
||||
|
||||
ChunkFin,
|
||||
|
||||
ExtensionsFin [
|
||||
CompoundCN,AdAdV,UttAdV,ApposNP,
|
||||
MkVPI, MkVPS, PredVPS, that_RP, who_RP
|
||||
],
|
||||
|
||||
DocumentationFin,
|
||||
DictionaryFin
|
||||
TranslateFin - [
|
||||
-- Verb
|
||||
ComplVS, ComplVQ, ComplVA,
|
||||
Slash2V3, Slash3V3, SlashV2V, SlashV2S, SlashV2Q, SlashV2A,
|
||||
SlashVV, SlashV2VNP,
|
||||
ReflVP,
|
||||
AdvVPSlash, AdVVPSlash, VPSlashPrep,
|
||||
-- Sentence
|
||||
PredSCVP,
|
||||
AdvSlash, SlashPrep, SlashVS,
|
||||
EmbedS, EmbedQS, EmbedVP, RelS,
|
||||
-- Question
|
||||
ComplSlashIP,AdvQVP,AddAdvQVP,QuestQVP,
|
||||
-- Idiom
|
||||
CleftNP, CleftAdv,
|
||||
ExistIP,
|
||||
ExistNPAdv, ExistIPAdv,
|
||||
ImpP3,
|
||||
SelfAdvVP, SelfAdVVP, SelfNP,
|
||||
-- Construction
|
||||
hungry_VP, thirsty_VP, has_age_VP, have_name_Cl, married_Cl, what_name_QCl, how_old_QCl, how_far_QCl,
|
||||
weather_adjCl, is_right_VP, is_wrong_VP, n_units_AP, bottle_of_CN, cup_of_CN, glass_of_CN,
|
||||
where_go_QCl, where_come_from_QCl, go_here_VP, come_here_VP, come_from_here_VP, go_there_VP, come_there_VP, come_from_there_VP,
|
||||
-- Extensions
|
||||
PassVPSlash, PassAgentVPSlash
|
||||
]
|
||||
|
||||
,PhrasebookFin - [PSentence, PQuestion, PGreetingMale, PGreetingFemale, GObjectPlease, open_A]
|
||||
|
||||
** open MorphoFin, ResFin, ParadigmsFin, SyntaxFin, (E = ExtraFin), (G = GrammarFin), Prelude in {
|
||||
** open ParadigmsFin, SyntaxFin, Prelude in {
|
||||
|
||||
flags
|
||||
literal=Symb ;
|
||||
|
||||
-- pro-drop exceptions: here as second rather than first alternative
|
||||
lin
|
||||
UsePron p = G.UsePron p | G.UsePron (E.ProDrop p) ;
|
||||
PossPron p = G.PossPron p | E.ProDropPoss p ;
|
||||
|
||||
-- to suppress punctuation
|
||||
lin
|
||||
PSentence, PQuestion = \s -> lin Text (mkUtt s) ;
|
||||
PGreetingMale, PGreetingFemale = \s -> lin Text s ;
|
||||
|
||||
GObjectPlease o = lin Text (mkUtt o) ;
|
||||
|
||||
|
||||
lin
|
||||
PhrasePhr p = {s = "+" ++ p.s} | p ;
|
||||
|
||||
Phrase_Chunk p = p ;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user