;; -*- Package: LKB; -*- ;;; GG grammar specific globals file ;;; parameters only - grammar specific functions ;;; should go in user-fns.lsp ;;; patches in lkb-code-patches.lsp #-(or :lkb-v5.3 :lkb-v5.4) (in-package :cl-user) #+(or :lkb-v5.3 :lkb-v5.4) (in-package :lkb) (setf *maximum-list-pane-items* 500) (defparameter *active-parsing-p* t) (defparameter *hierarchy-only-p* nil) ;;; increase dag pool size ;;; (defparameter *dag-pool-size* 200000) (defparameter *dag-pool* (if (and (pool-p *dag-pool*) (not (= (pool-size *dag-pool*) *dag-pool-size*))) (create-pool *dag-pool-size* #'(lambda () (make-safe-dag-x nil nil))) *dag-pool*)) ;;; Strings (defparameter *toptype* '*top*) (defparameter *string-type* 'string "a special type name - any lisp strings are subtypes of it") ;;; Lexical files (defparameter *orth-path* '(morph list first stem)) (defparameter *list-tail* '(rest)) (defparameter *list-head* '(first)) (defparameter *empty-list-type* '*null*) (defparameter *list-type* '*list*) (defparameter *diff-list-type* '*diff-list*) (defparameter *diff-list-list* 'list) (defparameter *diff-list-last* 'last) (defparameter *lex-rule-suffix* "_INFL_RULE" "creates the inflectional rule name from the information in irregs.tab - for PAGE compatability") (defparameter *irregular-forms-only-p* t) (defparameter *most-specific-only-p* t) (defparameter *feature-ordering* '(SYNSEM C-CONT MORPH ARGS HEAD-DTR NON-HEAD-DTR CAT CONT UNIAGR HOOK --KEY KEY MODCONT MESSAGE HCONS RELS)) ;;; (defparameter *display-type-hierarchy-on-load* nil) ;;; Parsing (defparameter *chart-limit* 100) (defparameter *maximum-number-of-edges* 12000) (defparameter *mother-feature* NIL "The feature giving the mother in a grammar rule") #-:MAL (defparameter *start-symbol* '(utterance-v-scnd utterance-v-fst utterance-non-v utterance-turn-seq utterance-coord utterance-int-clause utterance-v-scnd-ignp utterance-turn-seq-ignp utterance-coord-ignp utterance-int-clause-ignp) "specifing valid parses") #+:MAL (defparameter *start-symbol* '(utterance-v-scnd utterance-v-fst utterance-non-v utterance-turn-seq utterance-coord utterance-int-clause MAL-utterance-v-scnd MAL-utterance-v-fst MAL-utterance-non-v MAL-utterance-turn-seq MAL-utterance-coord MAL-utterance-int-clause) "specifing valid parses") ;(defparameter *start-symbol* '(utterance-v-scnd utterance-v-fst-conj utterance-v-fst-ind utterance-non-v utterance-turn-seq utterance-coord) ; "specifing valid parses") ;; Use the following for parsing fragments as well as full clauses: #| (defparameter *start-symbol* '(root_strict root root_conj root_subord) "specifing valid parses including fragments") |# (defparameter *maximal-lex-rule-applications* 9 "The number of lexical rule applications which may be made before it is assumed that some rules are applying circularly") (defparameter *maximal-morphological-rule-depth* 8) (defparameter *deleted-daughter-features* '(ARGS HEAD-DTR NON-HEAD-DTR head-loc comp-loc mom-subcat) "features pointing to daughters deleted on building a constituent") ;;; Parse tree node labels ;;; the path where the name string is stored (defparameter *label-path* '(LABEL-NAME)) ;;; the path for the meta prefix symbol (defparameter *prefix-path* '(META-PREFIX)) ;;; the path for the meta suffix symbol (defparameter *suffix-path* '(META-SUFFIX)) ;;; the path for the recursive category (defparameter *recursive-path* '(SYNSEM NONLOC _SLASH LIST FIRST)) ;;; the path inside the node to be unified with the recursive node (defparameter *local-path* '(SYNSEM LOC)) ;;; the path inside the node to be unified with the label node (defparameter *label-fs-path* '()) (defparameter *label-template-type* 'label-sign) ;;; for the compare function (defparameter *discriminant-path* '(synsem loc cont key pred)) ;;; Hide lexical rule nodes in parse tree ;;; (setf *dont-show-lex-rules* t) ;;; this belongs in the user-prefs file, not here (defparameter *chart-dependencies* '((SYNSEM LOC CAT HEAD SP-FORM) (SYNSEM LOC CAT VCOMP FIRST LOC CAT HEAD SP-FORM) ; (SYNSEM LOC CAT VCOMP FIRST LOC CAT HEAD VFORM) (SYNSEM LOC CAT HEAD SP-FORM) (SYNSEM LOC CAT SUBCAT LIST FIRST LOC CAT HEAD PFORM) (SYNSEM LOC CAT HEAD PFORM) (SYNSEM LOC CAT SUBCAT LIST REST FIRST LOC CAT HEAD PFORM) (SYNSEM LOC CAT HEAD PFORM) ; (SYNSEM LOC CAT VCOMP FIRST LOC CAT HEAD AUXF) (SYNSEM LOC CAT AUXF) ; (SYNSEM LOC CAT SUBCAT LIST FIRST LOC CAT HEAD V1 CAT VCOMP FIRST LOC CAT HEAD AUXF) (SYNSEM LOC CAT AUXF) (SYNSEM LOC CAT HEAD __VC) (SYNSEM LOC CAT VCOMP FIRST LOC CAT HEAD __VC) (SYNSEM LOC COORD _DEPCOORDFORM) (SYNSEM LOC COORD _MYCOORDFORM) ) ) (setf *semantics-index-path* '(SYNSEM LOC CONT HOOK INDEX)) (defparameter *chart-packing-p* nil) ;(setf *parse-record* (selectively-unpack-edges *parse-record* 10)) (setf *gen-ignore-rules* '(nx-d-e_infl_rule old2new_sign_infl_rule old2new_pre_infl_rule old2new_post_infl_rule old2new_pre_prefix_infl_rule rp-pron-full-short-colloq_infl_rule rp-pron-full-long-colloq_infl_rule recurs_punct_qmark_orule recurs_punct_excl_orule punct_lparen_orule punct_rparen_orule relax-right-comma init_punct_excl_orule punct_semicol_orule MAL-det-die_infl_rule MAL-det-der_infl_rule MAL-det-des_infl_rule MAL-det-das_infl_rule MAL-det-den_infl_rule MAL-det-dem_infl_rule MAL-det-einer_infl_rule MAL-det-eines_infl_rule MAL-det-einen_infl_rule MAL-det-einem_infl_rule MAL-det-eine_infl_rule MAL-det-ein-null_infl_rule MAL-adj-en_infl_rule MAL-adj-e_infl_rule MAL-adj-er_infl_rule MAL-adj-es_infl_rule MAL-adj-em_infl_rule MAL-adj-comp-umlaut-_infl_rule MAL-adj-comp-umlaut+_infl_rule MAL-local-doublet MAL-v1-doublet MAL-vend-doublet MAL-v1-vc-doublet MAL-part-v-doublet MAL-dass_infl_rule MAL-dasz_infl_rule MAL-das_infl_rule MAL-part-vend-perf-blend MAL-vend-perf-blend MAL-vend-imperf-blend MAL-verb-en_infl_rule MAL-verb-e_infl_rule MAL-verb-st_infl_rule MAL-verb-t_infl_rule MAL-verb-et_infl_rule MAL+punct_comma_orule )) (defparameter *duplicate-lex-ids* '(PAS-SEI-IMP GRUESS-DUMMY AUX-SEI-IMP AUX-GEWESEN GEHABT DREIVIERTEL-DUMMY HAB PAS-WERDE-IMP GENERIC_COUNT_NOUN GENERIC_MASS_NOUN GENERIC_ADJA GENERIC_ADJD GENERIC_ADVERB GENERIC_EMAIL GENERIC_MONEY GENERIC_NAME GENERIC_NUMBER GENERIC_TIME GENERIC_ORDINAL GENERIC_TITLE_NOUN DAS-RELP-NEU-SG-NA_MAL DASS-COMP_MAL COLON2-VAR)) (setf mrs::*null-semantics-hack-p* t) ;;; Packing restrictor for generation (defparameter *packing-restrictor* '(RELS HCONS ALTKEY KEY _SLASH I _CAS LEE _V1-HD) "restrictor used when generating with ambiguity packing") (setf *intersective-rule-names* nil) (setf *gen-packing-p* t) (setf *gen-filtering-p* t) (setf *gen-equate-qeqs-p* nil) (setf *gen-filtering-debug* nil) (setf *lex-rule-show-one-step* t) (defparameter *generic-lexical-entries* '((named_gle :generate) (card_gle :generate) (ord_gle :generate) (yofc_gle :generate) (generic_count_gle :generate) (decade_gle :generate) (clocktime_gle :generate))) #+:logon (setf *bypass-equality-check* :filter) #-:logon (setf *bypass-equality-check* nil) (grammar-encoding 'UTF-8) (setf *translate-grid* '(:de . (:de :en))) (setf lkb::*characterize-p* t) (setf *last-parses* (remove "the dog barks" *last-parses* :test #'string=)) (unless *last-parses* (setf *last-parses* '("Am Anfang war das Wort.")))