Commit Graph

93 Commits

Author SHA1 Message Date
Krasimir Angelov
65cfdf1775 added bracketedLinearizeAll 2018-06-20 13:51:41 +02:00
Krasimir Angelov
09d576f5b4 bracketedLinearize in Haskell now emits the BIND constructor like in Java 2018-06-20 13:05:15 +02:00
Thomas Hallgren
820d2d503f Fixes for GHC 8.4.1 compatibility
* In GHC 8.4.1, the operator <> has become a method of the Semigroup class
  and is exported from the Prelude. This is unfortunate, since <> is also
  exported from the standard library module Text.PrettyPrint, so in any
  module that defines a pretty printer, there is likely to be an ambiguity.

  This affects ~18 modules in GF. Solution:

    import Prelude hiding (<>)

  This works also in older versions of GHC, since GHC does't complain if
  you hide something that doesn't exists.

* In GHC 8.4.1, Semigroup has become a superclass of Monoid. This means
  that anywhere you define an instance of the Monoid class you also have to
  define an instance in the Semigroup class.

  This affects Data.Binary.Builder in GF. Solution: conditionally define
  a Semigroup instance if compiling with base>=4.11 (ghc>=8.4.1)
2018-04-18 19:18:10 +02:00
Krasimir Angelov
2036ffe06d bugfix in the Haskell binding 2018-04-12 15:12:36 +02:00
Krasimir Angelov
e3aa392e63 further extend the API of the C runtime 2017-10-04 09:45:56 +02:00
Krasimir Angelov
e426e87cf8 in the PGF2 api: remove showCategory. add categoryContext and functionIsConstructor 2017-10-03 16:05:01 +02:00
Krasimir Angelov
f2bc7ec7b6 added exprSubstitute in the C runtime for substituting meta variables 2017-09-28 16:33:34 +02:00
Krasimir Angelov
1c04fa4897 the parser for abstract expressions in the C runtime now supports partial parses 2017-09-28 13:57:13 +02:00
Krasimir Angelov
404154d16b added showPGF in the Haskell API 2017-09-25 18:31:36 +02:00
Krasimir Angelov
15d014abb8 the parser in the C runtime can now detect incomplete sentences just like the parser in the Haskell runtime. This is also reflected in all bindings. 2017-09-06 12:38:42 +02:00
Krasimir Angelov
18f2135785 added function printName in the Haskell binding 2017-09-05 11:56:53 +02:00
Krasimir Angelov
0469f4e97a added languageCode in the Haskell binding 2017-09-05 10:57:40 +02:00
Krasimir Angelov
5ed0e3ae7f fix the type signature for exprSize 2017-09-05 10:08:55 +02:00
Krasimir Angelov
30b7ba04c7 added exprFunctions in the Haskell binding 2017-09-05 10:07:43 +02:00
Krasimir Angelov
85cf2d9f5a added exprSize in the Haskell binding 2017-09-05 09:50:29 +02:00
Krasimir Angelov
a5fe5b9378 added exprHash in the Haskell binding 2017-09-05 09:46:43 +02:00
Krasimir Angelov
d5a7945ba0 complete details for the "ai" command in the C shell 2017-09-01 09:57:00 +02:00
Krasimir Angelov
5a37660811 added function treeProbability in the Haskell binding 2017-09-01 08:46:52 +02:00
Krasimir Angelov
b9c04fd612 graphvizWordAlignment in the C runtime 2017-08-31 13:03:11 +02:00
Krasimir Angelov
eaf9f0c3ac the C runtime now supports the same customizations for GraphViz as the Haskell runtime 2017-08-31 10:58:49 +02:00
Krasimir Angelov
cd53269f96 bugfix for hasLinearization in the Haskell binding 2017-08-30 18:11:59 +02:00
Krasimir Angelov
7db9f51d78 "ma" command in the C shell 2017-08-30 16:35:57 +02:00
Krasimir Angelov
75efcbd280 added tabularLinearizeAll in the Haskell binding 2017-08-30 16:18:07 +02:00
Krasimir Angelov
08a728799a change tabularLinearize in the Haskell binding to return a list instead of map this preserves the order 2017-08-30 15:59:43 +02:00
Krasimir Angelov
97fe5df267 added the concreteName function in the Haskell binding 2017-08-30 15:43:09 +02:00
Krasimir Angelov
b7b7a7c91c the embedded grammars now work with both the pure Haskell and the Haskell binding API 2017-08-29 18:44:50 +02:00
Krasimir Angelov
20b72f477a added bracketedLinearize in the Haskell binding 2017-08-29 11:58:12 +02:00
Krasimir Angelov
d4026a64f4 tabularLinearize in the Haskell binding 2017-08-28 15:09:34 +02:00
krasimir
ca891c912b a binding to the sentence lookup from Haskell 2017-05-12 09:32:25 +00:00
krasimir
94f41cc63d safer memory management in the Haskell binding 2017-02-10 17:10:37 +00:00
krasimir
0e49c28e5b API for computing the Haskell binding 2017-01-26 18:41:07 +00:00
krasimir
1cea621216 use throwIO instead of throw in a few placed 2017-01-26 18:40:36 +00:00
krasimir
af1a581f40 type checking API in the Haskell binding 2017-01-26 14:09:07 +00:00
krasimir
24671a612c a better implementation for PGF2.categories 2017-01-26 13:37:12 +00:00
krasimir
3467a54965 bring the Haskell binding a bit closer to the pure Haskell API 2017-01-26 12:48:22 +00:00
krasimir
17163ae881 copy the types for BracketedString from the Haskell runtime to the Haskell bindings 2017-01-26 10:31:43 +00:00
krasimir
6af632dd18 added mkMeta and unMeta in the Haskell binding 2017-01-26 10:17:02 +00:00
krasimir
be43d5dfdc added mkAbs and unAbs in the Haskell binding 2017-01-26 10:04:42 +00:00
krasimir
a06e0b6b6f more startCat to the Types section in the Haddock documentation for the Haskell binding 2017-01-26 06:41:27 +00:00
krasimir
14b32a115c add unStr,unInt and unFloat in the Haskell binding 2017-01-26 06:40:13 +00:00
krasimir
db0f8b0dce improve the documentation for PGF2 2017-01-25 20:30:54 +00:00
krasimir
6de9636ff2 add functionsByCat in the Haskell binding 2017-01-25 10:44:08 +00:00
krasimir
8d3464dfb0 bugfix in the Haskell binding 2017-01-25 10:37:34 +00:00
krasimir
ed1e60f633 fix in the Haskell binding: functionType should throw error if the function is not defined 2016-05-30 17:15:09 +00:00
krasimir
86c5423275 the Literals API in Haskell no longer offers the sentence as an argument to the callbacks. It is just as easy to save the sentence in a closure and by doing that we save the repeated round about from C to Haskell strings 2016-05-11 11:10:22 +00:00
krasimir
9abc6aadde many of the uses of peekCString and withCString in the Haskell binding were incorrect since they encode the string in the system locale while the C runtime is always using UTF8 2016-05-11 07:11:45 +00:00
krasimir
403e080273 fix the offset for oracles in Haskell 2016-05-10 19:41:44 +00:00
krasimir
80a96b3a85 an API for oracles in the GF parser 2016-05-10 17:11:39 +00:00
krasimir
bef9d8c5fc added a primitive full-text search index in libsg. This can be use for finding an abstract tree whose linearization matches given keywords 2015-12-20 14:04:52 +00:00
krasimir
9f9b23d0dd added mkInt and mkFloat in the Haskell binding to make it easy to create literal expressions 2015-11-19 13:18:19 +00:00