-
Notifications
You must be signed in to change notification settings - Fork 0
/
XSaiga.cabal
133 lines (126 loc) · 4.38 KB
/
XSaiga.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
cabal-version: 1.12
-- This file has been generated from package.yaml by hpack version 0.33.0.
--
-- see: https://github.com/sol/hpack
--
-- hash: 61347fb5074eac8845401849a533232e56964b281c50e44215fa49e7f7d78102
name: XSaiga
version: 1.7.0.0
synopsis: An implementation of a polynomial-time top-down parser suitable for NLP
description: This package contains a Haskell implementation of the X-SAIGA project's parser combinators. The combinators
enable fully-general attribute grammars to be implemented as executable specifications. Although the parser
is top-down, and therefore highly modular, left-recursive productions are allowed and fully-general synthesized
and inherited attribute dependencies are also allowed. The parse tree, which is decorated with attribute values,
is built as a compact Tomita-style graph. Lazy evaluation enables attribute values to be evaluated only as needed.
Time and space complexity are both O(n^4) where n is the length of the input. An example natural-language interface (called Solarman)
to a semantic-web style RDF triplestore with approximately 3,000 facts about the solar system has been built
as an executable specification of an attribute grammar. Solarman is included in this archive.
Solarman computes answers to queries using an event-based denotational semantics which is based on Montague and Davidsonian semantics.
A web site [3] has been created so that readers can enter queries and find out more about Solarman.
.
\[1] <http://cs.uwindsor.ca/~richard/PUBLICATIONS/PADL_08.pdf>
.
\[2] <http://cs.uwindsor.ca/~richard/PUBLICATIONS/PADL_10.pdf>
.
\[3] <http://speechweb2.cs.uwindsor.ca/solarman4/demo_sparql.html>
category: Parsing, Natural Language Processing, Memoization, Parser Combinators, Attribute Grammars, Text
homepage: http://speechweb2.cs.uwindsor.ca/solarman4/demo_sparql.html
bug-reports: https://github.com/InBetweenNames/Solarman/issues
author: Dr. Rahmatullah Hafiz, Dr. Richard Frost <rfrost@cogeco.ca>, Shane Peelar, Paul Callaghan, Eric Matthews
maintainer: Shane Peelar <peelar@uwindsor.ca>
license: BSD3
license-file: LICENSE
build-type: Simple
source-repository head
type: git
location: https://github.com/InBetweenNames/Solarman
flag asterius
description: Use when building for Asterius -- sets up hooks for querying triplestores via XMLHttpRequest
manual: True
default: False
flag instore
description: Use built-in triplestore (no network access)
manual: True
default: False
library
exposed-modules:
XSaiga.Getts
XSaiga.AGParser2
XSaiga.TypeAg2
XSaiga.SolarmanTriplestore
XSaiga.LocalData
XSaiga.CGI
other-modules:
XSaiga.ShowText
Paths_XSaiga
hs-source-dirs:
src
default-extensions: DoAndIfThenElse OverloadedStrings FlexibleInstances NoMonomorphismRestriction
build-depends:
aeson
, base >=4.6 && <5
, bifunctors
, bytestring
, cgi
, containers >=0.5
, data-constructors
, fastcgi
, generic-data
, hashable
, hsparql >=0.3.6
, mtl
, network
, pretty >=1.1
, random
, rdf4h >=1.2
, text >=0.11
, unordered-containers
, vector
if flag(instore)
cpp-options: -DINSTORE
else
build-depends:
network
if flag(asterius)
cpp-options: -DASTERIUS
build-depends:
asterius-prelude >=0.0.1
default-language: Haskell2010
executable solarman.cgi
main-is: Main.hs
other-modules:
Paths_XSaiga
hs-source-dirs:
driver
default-extensions: DoAndIfThenElse OverloadedStrings FlexibleInstances NoMonomorphismRestriction
build-depends:
XSaiga
, aeson
, base >=4.6 && <5
, bifunctors
, bytestring
, cgi
, containers >=0.5
, data-constructors
, fastcgi
, generic-data
, hashable
, hsparql >=0.3.6
, mtl
, network
, pretty >=1.1
, random
, rdf4h >=1.2
, text >=0.11
, unordered-containers
, vector
if flag(instore)
cpp-options: -DINSTORE
else
build-depends:
network
if flag(asterius)
cpp-options: -DASTERIUS
build-depends:
asterius-prelude >=0.0.1
default-language: Haskell2010