Commit Graph

4039 Commits

Author SHA1 Message Date
aarne
0025e078ea (un)lexmixed: added the other math environments than $ used in latex 2014-10-19 17:43:39 +00:00
aarne
2cda0ea770 ps -lines preserves line-by-line structure when preprocessing files for parsing line by line 2014-10-17 15:50:03 +00:00
aarne
1550300c80 one general case in dealing with backslash in latex lexing is enough 2014-10-17 15:49:23 +00:00
kr.angelov
70bf9f78b1 the C runtime now supports reading and writing expressions with indexed meta variables. The type checker generates fresh indices 2014-10-17 09:27:37 +00:00
aarne
d30aaa6547 unlexing latex code: no space between closing $ and punctuation 2014-10-17 07:04:50 +00:00
aarne
7ec778d747 lexer for latex code: don't separate backslash from the macro name that it marks 2014-10-17 06:40:06 +00:00
hallgren
c3e1d65fc1 Some work on the haddock documentation 2014-10-16 16:28:54 +00:00
hallgren
cd0f887ad9 Rename src/programs/gf.hs to gf-main.hs to avoid confusing GHC
It appears that GHC can't keep GF.hs and gf.hs apart on systems with case
insensitive file names.
2014-10-16 15:21:00 +00:00
hallgren
ede4a5a4c2 Turn the GF compiler into a library. Main program is now in src/programs/gf.hs
The module src/compiler/GF.hs now serves as a prelimiary compiler API. It just
exports a selection of functions and types from the compiler.

Haddock documentation can be generated with

	cabal haddock --hyperlink-source

Also bumbed the version number to 3.6.10.
2014-10-16 15:00:49 +00:00
hallgren
f109b44c97 More haddock documentation improvements 2014-10-16 14:03:57 +00:00
kr.angelov
fd8e4d3dd7 bugfix in the parser for abstract expressions in the C runtime 2014-10-16 11:40:47 +00:00
kr.angelov
76a448e26f finally proper stack unwind in the evaluator 2014-10-16 10:00:32 +00:00
hallgren
1d4215b822 Rename modules GFI, GFC & GFServer...
... to GF.Interactive, GF.Compiler & GF.Server, respectively.
2014-10-15 21:04:29 +00:00
hallgren
e0c0ff0020 Fixes for the haddock documentation 2014-10-15 20:42:36 +00:00
kr.angelov
6aa0fd2590 the compiler now allows + to be used as a floating point addition in the abstract syntax 2014-10-14 11:15:18 +00:00
kr.angelov
d42ffaa546 yet another bugfix in the byte code 2014-10-14 10:39:28 +00:00
kr.angelov
bc8cb8e9d7 another bugfix in the byte code generation 2014-10-14 09:43:43 +00:00
kr.angelov
e8b81c145b bugfix in the bytecode generator 2014-10-14 09:27:24 +00:00
kr.angelov
0e91de3b5f simplify jit_bare_ret 2014-10-14 09:09:26 +00:00
kr.angelov
4efb2d5a22 Prelude.CAPIT is now a built-in primitive. It still generates &| in the Haskell runtime but will be intepreted in the C runtime 2014-10-09 19:34:12 +00:00
kr.angelov
57f7b61c6b throw away the long obsolete runtime type information in the C runtime 2014-10-09 13:44:26 +00:00
kr.angelov
afd5886cdc fix two warnings in mem.c 2014-10-09 13:22:39 +00:00
kr.angelov
6d79274b2f fix in gu_mmap_pool for Android 2014-10-09 13:21:56 +00:00
kr.angelov
58e1eb33fc fix for lightning for ARM 2014-10-09 13:17:01 +00:00
kr.angelov
2892e6b8c8 remove the pgf-service util which is obsolete anyway 2014-10-09 11:28:56 +00:00
kr.angelov
4ac5902fc9 replace the hash maps in the abstract syntax with binary search tables 2014-10-09 08:38:55 +00:00
kr.angelov
a94ba9b888 add the const modifier to the key in the two procedures for binary search in libgu 2014-10-09 07:25:26 +00:00
kr.angelov
36bbee588f use MAP_FIXED in gu_mmap_pool 2014-10-08 19:43:08 +00:00
kr.angelov
cd6b92867a an experimental memory mapped pool. still not in use 2014-10-08 18:28:51 +00:00
hallgren
d0441cf847 GF.Infra.Options: change from String to Int in the type of optJobs 2014-10-08 16:57:04 +00:00
kr.angelov
23642fbb90 now we statically allocate closures for all top-level functions and all nullary constructors. closures are dynamically allocated only for CAFs. this reduces memory use and time to allocate dynamic closures 2014-10-08 12:57:29 +00:00
kr.angelov
e9a871db7f a missing case in instruction SET 2014-10-07 20:05:05 +00:00
kr.angelov
297403b350 bugfix in the byte code compiler 2014-10-07 20:03:54 +00:00
kr.angelov
e7404c8f7a added a missing case for PUSH instruction with a global closure 2014-10-07 11:46:38 +00:00
kr.angelov
9e493031b2 the indirection should be done in the evaluate_expr_thunk gate instead of in the pgf_evaluate_expr_thunk function. this ensures lazyness 2014-10-07 07:12:40 +00:00
kr.angelov
8d09f62efc using instruction RET was wrong; now use EVAL 2014-10-06 15:57:42 +00:00
kr.angelov
2bc0734b6e fix the order in which arguments are stored in the mk_const gate 2014-10-06 12:31:39 +00:00
kr.angelov
f5041fa67b push a stack frame around recursive calls to guarantee that a nested call to a failing function will not crash 2014-10-06 09:21:08 +00:00
kr.angelov
b07a2652d8 partial implementation for the FAIL instruction 2014-10-06 09:04:25 +00:00
kr.angelov
dee64838f4 bugfix in pgf_evaluate_expr_thunk 2014-09-30 17:34:29 +00:00
kr.angelov
0bdd599972 fix pgf_value2expr for partial applications 2014-09-30 13:46:46 +00:00
kr.angelov
8801915523 enough fixes to get the JIT compiler compile for ARM. It is still broken if you try to use it 2014-09-30 12:39:31 +00:00
kr.angelov
f124723236 add evaluator.c in Android.mk 2014-09-30 12:37:18 +00:00
kr.angelov
ceb5b7bbf3 fix in reader.h for compiling jpgf.c 2014-09-30 11:25:27 +00:00
kr.angelov
cdac80b6b2 fix in pgf_print_expr for lambda abstractions with more than one argument 2014-09-30 09:42:18 +00:00
kr.angelov
9fd8d5d019 bugfix in the gate evaluate_value_lambda 2014-09-30 08:42:06 +00:00
kr.angelov
2f7bd0306f minor stylistic change in GenerateBC 2014-09-29 15:08:00 +00:00
kr.angelov
698329f469 bugfix in the pattern matching compiler and a number of other fixes that I somehow did not push before 2014-09-29 15:00:04 +00:00
kr.angelov
0d08417efe bugfix in the RET instruction 2014-09-29 13:04:49 +00:00
kr.angelov
1d7e976560 enlarge the code window in pgf_jit_gates to ensure enough space on 64-bit machines 2014-09-29 07:34:32 +00:00