kr.angelov
|
b1e6a21c56
|
now (+) in the abstract syntax works, i.e. it knows how to deal with partial sums
|
2014-10-31 14:16:11 +00:00 |
|
kr.angelov
|
9b0f354c7c
|
a more efficient tail call by using the new TUCK instruction
|
2014-10-30 13:09:50 +00:00 |
|
kr.angelov
|
efedec187c
|
an explicit SAVE instruction
|
2014-10-26 11:40:12 +00:00 |
|
kr.angelov
|
6986f1acd7
|
comment out a few assertions in bits.h. this code is run too often to have explicit assertions
|
2014-10-24 11:15:40 +00:00 |
|
kr.angelov
|
8abbd2f67e
|
make it possible to specify the initial size of a map in libgu
|
2014-10-24 09:17:22 +00:00 |
|
kr.angelov
|
dc62e52636
|
simplify gu/map
|
2014-10-24 08:56:39 +00:00 |
|
kr.angelov
|
550c747941
|
fix memory leak in the pgf-parse tool
|
2014-10-24 08:42:32 +00:00 |
|
kr.angelov
|
5cae930723
|
add extern declarations for all inline functions in seq.h. this ensures that everything works even when the compiler's optimizations are off
|
2014-10-24 08:26:58 +00:00 |
|
kr.angelov
|
e169f225cf
|
a simple optimization in cmp_item_prob with great effect on the parser's speed
|
2014-10-23 21:22:22 +00:00 |
|
kr.angelov
|
18f8f2e4f4
|
remove some deadcode in gu/seq.h
|
2014-10-23 21:21:21 +00:00 |
|
kr.angelov
|
aff68e7422
|
inline a number of functions in gu/seq.c. this has a noticeable effect on the parser's speed
|
2014-10-23 21:19:29 +00:00 |
|
kr.angelov
|
3aaeb7a156
|
a cosmetic optimization in mem.c
|
2014-10-23 15:45:14 +00:00 |
|
kr.angelov
|
fc6658c2e7
|
fix the debug mode in the reasoner
|
2014-10-23 08:15:12 +00:00 |
|
kr.angelov
|
578df576ef
|
fix warning in ucs.c
|
2014-10-23 07:44:41 +00:00 |
|
kr.angelov
|
00922153aa
|
CAPIT is now naturally supported in the C runtime
|
2014-10-22 15:05:55 +00:00 |
|
kr.angelov
|
df113f9cc4
|
add Unicode classification routines to libgu. ported from the base package in Haskell.
|
2014-10-22 14:36:58 +00:00 |
|
kr.angelov
|
c8b3865338
|
an explicit PUSH_FRAME instruction
|
2014-10-22 14:11:41 +00:00 |
|
kr.angelov
|
bb1f0f3368
|
get rid of gu/str.(c|h)
|
2014-10-20 07:50:42 +00:00 |
|
kr.angelov
|
3f11f3d602
|
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 |
|
kr.angelov
|
c0ebbc4edf
|
bugfix in the parser for abstract expressions in the C runtime
|
2014-10-16 11:40:47 +00:00 |
|
kr.angelov
|
26ad164cec
|
finally proper stack unwind in the evaluator
|
2014-10-16 10:00:32 +00:00 |
|
kr.angelov
|
ac288386c4
|
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
|
f4dc2c0b6e
|
bugfix in the bytecode generator
|
2014-10-14 09:27:24 +00:00 |
|
kr.angelov
|
1c2e02ad50
|
simplify jit_bare_ret
|
2014-10-14 09:09:26 +00:00 |
|
kr.angelov
|
f8b73d593c
|
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
|
86e9acc7a7
|
throw away the long obsolete runtime type information in the C runtime
|
2014-10-09 13:44:26 +00:00 |
|
kr.angelov
|
8e3ed825a8
|
fix two warnings in mem.c
|
2014-10-09 13:22:39 +00:00 |
|
kr.angelov
|
b905558ce8
|
fix in gu_mmap_pool for Android
|
2014-10-09 13:21:56 +00:00 |
|
kr.angelov
|
397276defd
|
fix for lightning for ARM
|
2014-10-09 13:17:01 +00:00 |
|
kr.angelov
|
3e49a1cf73
|
remove the pgf-service util which is obsolete anyway
|
2014-10-09 11:28:56 +00:00 |
|
kr.angelov
|
6c86e7fa91
|
replace the hash maps in the abstract syntax with binary search tables
|
2014-10-09 08:38:55 +00:00 |
|
kr.angelov
|
84b257e85c
|
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
|
a9a781e4a0
|
use MAP_FIXED in gu_mmap_pool
|
2014-10-08 19:43:08 +00:00 |
|
kr.angelov
|
f178be5405
|
an experimental memory mapped pool. still not in use
|
2014-10-08 18:28:51 +00:00 |
|
kr.angelov
|
9c2f71b07a
|
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
|
67781996b6
|
a missing case in instruction SET
|
2014-10-07 20:05:05 +00:00 |
|
kr.angelov
|
e98d61b7b7
|
added a missing case for PUSH instruction with a global closure
|
2014-10-07 11:46:38 +00:00 |
|
kr.angelov
|
de1b372ef7
|
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
|
13c7721bc5
|
using instruction RET was wrong; now use EVAL
|
2014-10-06 15:57:42 +00:00 |
|
kr.angelov
|
af7feea385
|
fix the order in which arguments are stored in the mk_const gate
|
2014-10-06 12:31:39 +00:00 |
|
kr.angelov
|
a50315396f
|
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
|
889c0f3df4
|
partial implementation for the FAIL instruction
|
2014-10-06 09:04:25 +00:00 |
|
kr.angelov
|
4e00834c68
|
bugfix in pgf_evaluate_expr_thunk
|
2014-09-30 17:34:29 +00:00 |
|
kr.angelov
|
f5da57056c
|
fix pgf_value2expr for partial applications
|
2014-09-30 13:46:46 +00:00 |
|
kr.angelov
|
312d4ff52e
|
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
|
f25b45e13d
|
fix in reader.h for compiling jpgf.c
|
2014-09-30 11:25:27 +00:00 |
|
kr.angelov
|
6be25aa872
|
fix in pgf_print_expr for lambda abstractions with more than one argument
|
2014-09-30 09:42:18 +00:00 |
|
kr.angelov
|
70455b88a7
|
bugfix in the gate evaluate_value_lambda
|
2014-09-30 08:42:06 +00:00 |
|
kr.angelov
|
80acad4447
|
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
|
1ecd61f7f5
|
bugfix in the RET instruction
|
2014-09-29 13:04:49 +00:00 |
|