Commit Graph

7922 Commits

Author SHA1 Message Date
krasimir
627abeb703 added PGF.inferExpr and Type.toString in the Java binding 2016-04-14 13:12:22 +00:00
krasimir
6a0ed34b11 bugfix in GNU Lightning for ARM 2016-04-14 08:26:07 +00:00
krasimir
76a6cc1bb5 bugfix in the JIT compiler for 64bit machines 2016-04-13 14:58:12 +00:00
hallgren
83d878a636 debian/control: dependency change from libtool to libtool-bin
It seems that nowadays the libtool executable is not included in the package
named libtool, instead it is in the libtool-bin package.
2016-04-13 14:39:33 +00:00
krasimir
e8e52de6b9 locale independent printing for doubles when they are part of an abstract expression 2016-04-13 14:30:40 +00:00
krasimir
c0344e936a fix for reading PgfExpr with a double literal 2016-04-13 14:08:49 +00:00
hallgren
68ebfe9de2 Minibar: don't show dependency information in parse trees.
This was fixed by adding "&nodep=true" in the minibar when it requests a
parse tree from the server. The reason dependency information got included
in the first place was that all rendering options are on by default in
command=parsetree requests in PGF service API.
2016-04-13 13:18:18 +00:00
krasimir
f0014f61a7 added PGF.compute in the Java binding 2016-04-13 12:57:06 +00:00
krasimir
f0ca9cd732 added getFunctionsByCat 2016-04-13 12:49:08 +00:00
krasimir
1019b7faf5 added getCategories() and getFunctions() in the Java binding 2016-04-13 12:02:42 +00:00
krasimir
3ee356dee4 fix in FoodsMkd.gf 2016-04-08 15:25:12 +00:00
hallgren
1454953391 Changes to include the Java binding in binary distribution packages
This means that you now need to have a Java SDK installed to build
a Debian package.

The bin/build-binary-dist.sh (which builds bintar packages and OS X installer
packages) now skips the Python binding if python is not installed. Likewise
it skips the Java binding if a Java SDK is not installed.
2016-04-12 15:01:11 +00:00
hallgren
94b8ebf402 debian/rules: workaround for a problem on Ubuntu 15.10 and 16.04
dh_shlibdeps has a problem finding which package some of the Haskell
libraries come from, even though dpkg-query -S has no problem finding them.
But the gf executable is statically linked against the Haskell libraries, so
it will work even if these shared libraries aren't installed. But there will
be a problem if other shared libraries are missing (.e.g. libtinfo, libgmp),
so we need a better solution than simply ignoring all dependency problems...

See also http://stackoverflow.com/questions/11238134/dpkg-shlibdeps-error-no-dependency-information-found-for
2016-04-12 13:25:17 +00:00
hallgren
31df4a6c46 GF.Command.Commands2: adapt gf -cshell to the changes in the previous patch 2016-04-07 14:55:13 +00:00
hallgren
ab3cc77656 GF shell: fix a parsing problem with the cc command
This patch fixes a problem introduced last year when the GF shell was
refactored to allow more commands to be treated uniformly and be part
of pipes. The cc command was one of those commands, but unfortunately this
introduced a parsing problem, e.g.

	> cc "last"
	constant not found: last

	> cc "last"++"year"
	command not parsed: cc "last"++"year"

This happened because the generic command line parser in
GF.Command.{Abstract,Parse} assumes that all commands have an argument of
type PGF.Expr. Commands that expect other types of arguments have to
use PGF.showExpr combined with other conversion to the argument type they
expect. The cc command excpets a GF.Grammar.Term, and unfortunately not 
all terms survice the roundtrip through PGF.Expr, in part because of
an additional hack to allow strings to be roundtripped through PGF.Expr
without adding superfluous double quotes.

To solve the problem, this patch

 + makes room for arguments of type Term in the Argument type in
   GF.Command.Abstract.
   
 + makes a special case for the cc command in GF.Command.Parse, by
   calling the partial parser 'runPartial pTerm' recently added in
   GF.Grammar.Lexer and GF.Grammar.Parser. Care was taken so that
   that "|" and ";" can be used both inside terms and as separators between
   commands in the shell, e.g. things like the following now work:

       > cc ("a"|"b") | ps -lexcode
       variants { "a" ; "b" }

 + introduces a type CommandArgument that replaces [Expr] as the
   type of values passed between commands in pipes. It has room for
   values of type [Expr], [String] and Term, thus eliminating the need
   to roundtrip through the Expr type all the time.
   The hack to avoid adding superfluous quotes when strings are
   roundtripped through Expr has been left in place for now,
   but can probably be removed.
2016-04-07 13:40:05 +00:00
hallgren
65e675d8e2 Lexer.x & Parser.y: add a partial parser for terms
Lexer.x: Change the parser monad type P to allow the remaining input to
	 be returned after a partial parse. Add function

           runPartial :: P t -> String -> Either (Posn, String) (String, t)

Parser.y: Add a partial parser pTerm for nonterminal Exp1.
          Re-export runPartial.
2016-04-07 13:32:14 +00:00
krasimir
c130d28ae3 fixed Foods grammar for Macedonian 2016-04-07 10:49:35 +00:00
hallgren
c8b7ebc163 Lexer.x: fix cyclic Functor instance
It looks like I introduced this cyclic definition in August 2014, but since
it isn't used, it hasn't been a problem...
2016-04-06 13:46:48 +00:00
hallgren
ad22a4d899 src/tools: update GFDoc.hs and Htmls.hs for compatibility with current libraries and add gf-tools.cabal to compile them 2016-04-05 13:29:56 +00:00
krasimir
9db5139e23 Foods grammar for Macedonian. Probably not quite correct 2016-04-05 15:33:44 +00:00
hallgren
7d509d6933 GFSE: add Latvian to the list of RGL languages 2016-04-03 17:29:10 +00:00
hallgren
465a83cd02 src/runtime/c/INSTALL: add automake to the list of needed packages on Linux
The automake package contains aclocal, which is needed when running
autoreconf -i.

I never needed to install automake explicitly on Linux, presumably because it
got installed anyway because of some other dependency, but apparently you
can't take this for granted.
2016-03-30 11:43:16 +00:00
krasimir
a393c1a246 fix the handling of separators in BNFC which are not nonempty 2016-03-22 13:13:35 +00:00
krasimir
ce70720859 CFGtoPGF is now extended to support context-free grammars with primitive parameters 2016-03-22 10:28:15 +00:00
krasimir
fbdf21d862 added missing module GF.Grammar.BNFC 2016-03-21 20:03:28 +00:00
krasimir
8f80e5451e fix comment in GF.Grammar.CFG 2016-03-21 19:33:14 +00:00
krasimir
c8ebe09315 initial support for BNFC syntax in context-free grammars for GF. Not all features are supported yet. Based on contribution from Gleb Lobanov 2016-03-21 13:27:44 +00:00
krasimir
da10bb33c7 bugfix: GF.Compile.CFGtoPGF now supports literal categories 2016-03-21 13:26:32 +00:00
krasimir
07cf4d6509 more progress on the typechecker 2016-03-15 14:16:17 +00:00
krasimir
c1671d43e2 current state of the experimental typechecker 2016-03-07 20:20:47 +00:00
krasimir
4ba9712f16 add missing cases in vapply in the partial evaluator 2016-03-03 06:59:50 +00:00
krasimir
508bc346e5 fix in the typechecker 2016-03-02 21:28:54 +00:00
hallgren
a2922e35fd gf.cabal: Remove GF.Compile.Compute.ConcreteNew1 2016-03-02 16:29:13 +00:00
krasimir
13ff91bbb9 a better interface between the type checker and the partial evaluator 2016-03-02 16:22:56 +00:00
krasimir
47eb774cdf the experimental type checker in GF.Compile.TypeCheck.ConcreteNew is now rewriten to use the complete evaluator in GF.Compile.Compute.ConcreteNew. The old sketchy implementation in GF.Compile.Compute.ConcreteNew1 is now removed. 2016-03-02 13:38:02 +00:00
leiss
672c1e8df5 add forgotten file src/runtime/haskell/PGF/LexingAGreek.hs 2016-02-23 17:32:19 +00:00
leiss
df2901c9c0 add lexer and unlexer for Ancient Greek accent normalization 2016-02-23 16:30:39 +00:00
krasimir
8548979d1c Now we even test in two different places for the JNI headers. Once for Linux and once for Mac OS. This is still not ideal since different Linux distributions might use different locations. 2016-02-17 14:52:48 +00:00
krasimir
9e3944951c typo in the new Makefile 2016-02-17 14:40:46 +00:00
krasimir
279f66c950 a version of the Makefile for the Java binding which should work on Linux and Mac OS 2016-02-17 14:37:55 +00:00
krasimir
55a7fdc4a5 some progress on complex queries in libsg 2016-02-09 10:59:18 +00:00
hallgren
114dc54bf9 demos/index.html: a couple of fixes 2016-02-08 16:41:50 +00:00
krasimir
4a38cc1e7b fix a rather intricate bug where coercions in the PMCFG grammar didn't interact properly with the lazy parser 2016-01-26 14:29:06 +00:00
hallgren
9bed116878 GFSE: add Afrikaans to the list of available RGL languages. 2016-01-19 13:59:17 +00:00
krasimir
5576688410 javadoc comments in the Java binding 2016-01-14 19:03:13 +00:00
inari
9aeefe6925 add link to irc channel 2016-01-14 05:59:49 +00:00
krasimir
8dda2dfbff added API for reading a list of tuples in the SG module 2015-12-22 13:50:01 +00:00
krasimir
028de0468b pgf_read should close the input file. 2015-12-22 09:29:14 +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
0b9395fd70 a fix that should solve the segmentation fault on MacOS with the exhaustive generator 2015-12-19 17:30:41 +00:00