Commit Graph

149 Commits

Author SHA1 Message Date
Krasimir Angelov
fd2aa96e65 use interleaved IO for peeking strings when possible 2018-11-14 15:52:44 +01:00
Krasimir Angelov
7239a45ac5 optimized peeking from GuStringBuf 2018-11-14 14:04:51 +01:00
Krasimir Angelov
7f84cc22e9 update PGF2.Internals to the new data structure 2018-11-14 10:03:18 +01:00
Krasimir Angelov
8a9430f63a hide the compatibility API 2018-10-15 12:04:03 +02:00
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
odanoburu
2c163bb243 - rm duplicate lines 2018-04-09 12:14:32 -03:00
odanoburu
d7154a52f9 - rm trailing spaces 2018-04-09 12:14:02 -03: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
d79ac56870 handle productions in the internal creation API 2017-09-25 13:23:53 +02:00
Krasimir Angelov
d574bb2164 an almost complete API for building new PGF files in the Haskell binding 2017-09-14 15:23:13 +02:00
Krasimir Angelov
80b61f716c added PGF2.Internal.writePGF in the Haskell binding 2017-09-13 10:32:39 +02:00
Krasimir Angelov
3aecefebdb an almost complete API for creating the abstract syntax of a PGF in memory 2017-09-11 14:12:36 +02:00
Krasimir Angelov
6712969503 an API to access the grammar's flags 2017-09-11 08:50:29 +02:00
Krasimir Angelov
09f5c95d82 more type corrections 2017-09-08 23:45:33 +02:00
Krasimir Angelov
31b5e550b7 the Haskell binding should be more careful with the matching types in C 2017-09-08 23:21:40 +02:00
Krasimir Angelov
71e6562eaa an initial sketch for PGF building API in the Haskell binding 2017-09-08 15:15:23 +02:00
Krasimir Angelov
4f680b728b a light API in the Haskell binding for accessing the internal data structures 2017-09-07 21:31:33 +02:00
Thomas Hallgren
9f7a6cfe10 PGF2.FFI: import Data.Word(Word)
for compatibility with older versions of GHC
2017-09-06 18:01:08 +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
08d781833c forgot to commit PGF2.FFI 2017-09-04 14:58:59 +02:00
Krasimir Angelov
71c4b4a246 instance Eq Expr in the Haskell binding 2017-09-04 14:49:44 +02:00
Krasimir Angelov
1f908fa7bf eliminate modules PGF.Lexing, PGF.LexingAGreek. Make PGF.Utilities an internal module in the runtime. These are not really part of the core runtime. 2017-09-04 11:43:37 +02:00
Krasimir Angelov
c48f3bdfbc rename the pgf2-bind package to pgf2 2017-09-01 13:07:47 +02:00
Krasimir Angelov
8a333c9ca8 bugfix in showType from the C runtime 2017-09-01 10:00:47 +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