Fast IFS using RPN notation
Find a file
2020-01-25 16:02:33 +01:00
tests Splitting TestCase in different files 2020-01-25 16:02:33 +01:00
check_deps.sh Initial commit 2020-01-24 16:48:27 +01:00
config.h Initial commit 2020-01-24 16:48:27 +01:00
Doxyfile.mk Initial commit 2020-01-24 16:48:27 +01:00
LICENCE.txt Initial commit 2020-01-24 16:48:27 +01:00
Makefile Benchmark updates 2020-01-25 06:42:25 +01:00
python_pyrpn.c Initial commit 2020-01-24 16:48:27 +01:00
python_pyrpn.h Initial commit 2020-01-24 16:48:27 +01:00
python_rpnexpr.c Implementing pickle interface for RPNExpr 2020-01-25 06:44:45 +01:00
python_rpnexpr.h Implementing pickle interface for RPNExpr 2020-01-25 06:44:45 +01:00
README Initial commit 2020-01-24 16:48:27 +01:00
rpn_if.c Initial commit 2020-01-24 16:48:27 +01:00
rpn_if.h Initial commit 2020-01-24 16:48:27 +01:00
rpn_ifs.h Initial commit 2020-01-24 16:48:27 +01:00
rpn_jit.c Add end map when untokenizing + debug message + comment 2020-01-25 06:43:32 +01:00
rpn_jit.h Add end map when untokenizing + debug message + comment 2020-01-25 06:43:32 +01:00
rpn_lib.asm Initial commit 2020-01-24 16:48:27 +01:00
rpn_lib.h typedef unsigned long int rpn_value_t 2020-01-25 06:43:59 +01:00
rpn_mutation.c Initial commit 2020-01-24 16:48:27 +01:00
rpn_mutation.h Initial commit 2020-01-24 16:48:27 +01:00
rpn_parse.c Add end map when untokenizing + debug message + comment 2020-01-25 06:43:32 +01:00
rpn_parse.h Initial commit 2020-01-24 16:48:27 +01:00
test.c Implementing pickle interface for RPNExpr 2020-01-25 06:44:45 +01:00
VERSION Initial commit 2020-01-24 16:48:27 +01:00

rpnifs fast IFS using RPN notation :
====================================

Provides :
----------
- C library for parameterized RPN expression JIT compilation and evaluation
- C library for handling IFS (composed of JIT RPN expressions)
- C library for RPN expression random mutation
- Python bindings : pyrpn Python module (pyrpn.so)

More details on Python module by running :
	make && python3 -c "import pyrpn; help(pyrpn)"

More details on C API see Doxygen documentation.

Dependencies :
--------------
- gcc
- nasm
- ld
- python3 
- python3 headers

Documentation :
- doxygen
- git

Compilation :
-------------
	make

Doxygen documentation :
-----------------------
	make doc
	www-browser doc/html/index.html

Running self tests and benchmark :
----------------------------------
	make checks

Debugging :
-----------
	make clean
	DEBUG=1 make
	DEBUG=1 make check