Commit Graph

3284 Commits

Author SHA1 Message Date
kr.angelov
2780ea839b ensure that the grammar is loaded only once even if the main activity is recreated 2013-10-07 11:50:58 +00:00
kr.angelov
f42bd89676 ensure that the grammar is loaded only once 2013-10-07 11:26:53 +00:00
kr.angelov
872a14d7ca in case of parse error report the token on Android 2013-10-07 10:11:41 +00:00
kr.angelov
6aa3ade82a remove the binaries for the grammar, the .so file and .jar file in the Android App. These should be compiled from sources 2013-10-07 09:58:47 +00:00
kr.angelov
5324ce5de3 remove the custom background in activity_main.xml since it is not backward compatible with older versions of Android 2013-10-07 09:57:24 +00:00
kr.angelov
f6b708ecab fix the grammar printer after the change of GuString in libgu 2013-10-07 09:46:35 +00:00
kr.angelov
2623d53963 remove the grammar copying from the Android UI since now we can load grammars from InputStream 2013-10-04 20:31:58 +00:00
bringert
6adc9f7be4 Add new Android voice translator sample app
This adds a simple voice translator Android app that uses
the JNI bindings to the PGF C runtime.

Caveats:

- Since the C runtime doesn't compile for Android right now,
  I've bundled an old copy, along with its Java bindings.
  That should be removed once the C runtime compiels for Android
  again.

- Adding an automated build would be nice.

- Replacing the grammar requires editing a Java file, that should 
  really be more dynamic.
2013-10-04 16:26:46 +00:00
kr.angelov
0d9d926131 fixes in the Java binding after the refactoring of GuString 2013-10-04 19:53:19 +00:00
kr.angelov
747590b86d suppress warning in graphviz.c 2013-10-04 12:56:45 +00:00
kr.angelov
2f78333e28 GuString is now an ordinary C string - it makes live easier. In addition PgfSymbolKS, PgfExprFun and PgfLiteralStr now keep their strings as embedded flexible arrays. The latest change gives us the same compactness as the old representation but it is a lot easier to use. 2013-10-04 12:04:39 +00:00
kr.angelov
96399838b7 space leak in the Java binding 2013-10-03 21:00:45 +00:00
kr.angelov
357ddfb5d3 the symbol for nonExist in the GF runtime should be the last. this simplifies the binary search in the C runtime 2013-10-03 08:21:31 +00:00
kr.angelov
e09104c6d9 something in the typeinferencer of the latest GHC has changed. I need to add a type signature for GF.Compile.GrammarToPGF.genCncFuns in order to compile. 2013-10-02 19:04:30 +00:00
kr.angelov
573654e125 fix the bracketed linearization in Python after the introduction of nonExist and BIND 2013-09-30 11:49:51 +00:00
kr.angelov
cedf848b5d fix the graphviz visualization after the introduction of nonExist and BIND 2013-09-30 10:38:28 +00:00
kr.angelov
5dca1b7cfc the compiler now sorts the list of sequences in the PGF files 2013-09-23 13:13:59 +00:00
kr.angelov
c4f68adca9 better handling for nonExist in the C runtime. BIND is also supported in the linearizer but not in the parser yet 2013-09-30 10:25:39 +00:00
kr.angelov
efa4bc4d62 a major refactoring in the C and the Haskell runtimes. Note incompatible change in the PGF format!!!
The following are the outcomes:

   - Predef.nonExist is fully supported by both the Haskell and the C runtimes

   - Predef.BIND is now an internal compiler defined token. For now
     it behaves just as usual for the Haskell runtime, i.e. it generates &+.
     However, the special treatment will let us to handle it properly in 
     the C runtime.

   - This required a major change in the PGF format since both 
     nonExist and BIND may appear inside 'pre' and this was not supported
     before.
2013-09-27 15:09:48 +00:00
kr.angelov
a6e0ef76f1 remove pgf/edsl.h from the C runtime 2013-09-26 11:59:35 +00:00
kr.angelov
ab52863534 add gu_variant_close in libgu 2013-09-26 10:41:52 +00:00
kr.angelov
65ea8814aa fix the debug mode of the parser after the refactoring in libgu 2013-09-25 10:21:35 +00:00
kr.angelov
be8bf64eb2 added assertion in the JIT compiler which checks that we are not going outside of the compilation window 2013-09-25 07:53:10 +00:00
kr.angelov
b2b5bda43d fix a typo in src/runtime/javascript/translator.html 2013-09-25 07:13:50 +00:00
kr.angelov
a1a4f7a1c1 a small fix in the python binding after the refactoring in the C runtime 2013-09-24 09:14:43 +00:00
kr.angelov
62d5dfb71b GrammarToPGF now looks only at the top modules for the PGF flags 2013-09-23 09:30:45 +00:00
kr.angelov
ae79e7c386 fix a warning in the compiler 2013-09-23 09:20:55 +00:00
kr.angelov
e6dbd74dc9 GF.Grammar.Grammar.allExtends now returns a list of source modules instead of just the module names. This saves extra lookups later 2013-09-23 09:18:27 +00:00
hallgren
a7469a694b Comment out identifier refreshing code only used by the removed refresh pass 2013-09-20 16:36:24 +00:00
hallgren
fd430a40fe Introduce type RawIdent; only 9 imports of Data.ByteString.Char8 remain
The fact that identifiers are represented as ByteStrings is now an internal
implentation detail in module GF.Infra.Ident. Conversion between ByteString
and identifiers is only needed in the lexer and the Binary instances.
2013-09-19 20:48:10 +00:00
hallgren
38fe30c610 Make Ident abstract; imports of Data.ByteString.Char8 down from 29 to 16 modules
Most of the explicit uses of ByteStrings were eliminated by using identS,

	identS = identC . BS.pack 

which was found in GF.Grammar.CF and moved to GF.Infra.Ident. The function

	prefixIdent :: String -> Ident -> Ident

allowed one additional import of ByteString to be eliminated. The functions

	isArgIdent :: Ident -> Bool
	getArgIndex :: Ident -> Maybe Int

were needed to eliminate explicit pattern matching on Ident from two modules.
2013-09-19 18:23:47 +00:00
kr.angelov
aea67b8109 the PGF reader now releases strings that are not used after the loading 2013-09-18 08:26:11 +00:00
kr.angelov
2b14fd2aae add type signature for gu_string_length in the headers of libgu 2013-09-18 08:03:37 +00:00
kr.angelov
016721d676 bugfix in the ordering of strings in libgu 2013-09-17 19:05:54 +00:00
kr.angelov
b6ba5e7493 gu_buf_binsearch -> gu_seq_binsearch. Improved API 2013-09-17 19:04:46 +00:00
kr.angelov
62019f0881 added order and equality for strings in libgu 2013-09-17 13:45:37 +00:00
kr.angelov
f984bfeb24 a major refactoring in the C runtime. GuList is now removed and replaced with GuSeq. The GuSeq/GuBuf API is simplified 2013-09-17 12:45:00 +00:00
kr.angelov
5f0b5ecf35 added BSD licenses to the Java binding and the android UI 2013-09-16 06:54:55 +00:00
kr.angelov
d5438439dc remove leftcorner_cat_idx which is now redundant 2013-09-13 13:49:17 +00:00
kr.angelov
605772fda1 minor optimization/refactoring in the grammar reader 2013-09-13 11:02:17 +00:00
kr.angelov
239eb22df5 the leftcorner indexing is now completely removed since it slowed down the loading without speeding up parsing a lot 2013-09-13 10:26:33 +00:00
kr.angelov
40baee9068 fix the debug mode of the parser after the changes in the libgu API 2013-09-13 09:58:20 +00:00
kr.angelov
540de9c2d0 tiny optimization in pgf/reader 2013-09-13 09:50:44 +00:00
kr.angelov
d39003f872 bugfix in utf8.c 2013-09-13 09:50:04 +00:00
kr.angelov
d6323291cd fix a warning in utf8.c 2013-09-13 08:30:57 +00:00
kr.angelov
fc038c5240 optimize the reading of strings in the grammar loader. 2013-09-13 08:28:20 +00:00
kr.angelov
1e17f768fc more UTF8 cleanup 2013-09-13 08:12:19 +00:00
kr.angelov
30f37feb57 clean up the UTF8 API in libgu 2013-09-13 07:44:45 +00:00
kr.angelov
6080a625f7 fix in Android.mk to make sure that the Android build will always see the ARM headers of GNU lightning 2013-09-12 12:55:55 +00:00
kr.angelov
d51b976d29 remove the logging from libgu 2013-09-12 09:30:02 +00:00