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