aboutsummaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2016-02-29 11:38:38 +0100
committerMattias Andrée <maandree@kth.se>2016-02-29 11:38:38 +0100
commit883178c50b8c3e6125363a4fe742f26d9c8f1100 (patch)
tree279bcb64b13f1fe0904b496313ef12dd58ba3278 /README
downloadlibzahl-883178c50b8c3e6125363a4fe742f26d9c8f1100.tar.gz
libzahl-883178c50b8c3e6125363a4fe742f26d9c8f1100.tar.bz2
libzahl-883178c50b8c3e6125363a4fe742f26d9c8f1100.tar.xz
initial commit
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'README')
-rw-r--r--README30
1 files changed, 30 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..ce2ad09
--- /dev/null
+++ b/README
@@ -0,0 +1,30 @@
+NAME
+ libzahl - big integer library
+
+ETYMOLOGY
+ The bold uppercase Z which represents the set of
+ all integers is derived from the german word 'zahlen',
+ whose singular is 'zahl'.
+
+DESCRIPTION
+ libzahl is a C library for arbitrary size integers,
+ that aims to be usable for rubust programs, and be
+ fast.
+
+ libzahl will accomplish this by using long jumps
+ when an error is detected, rather than letting the
+ caller also perform a check. This shall make the
+ code in the user program cleaner too. libzahl will
+ use dedicated temporary bitnum integers whether
+ possible, and necessary, for its internal calculations.
+ libzahl will not deallocate allocations, but rather
+ cache them for reuse.
+
+ With the exception of functions working with strings,
+ all output parameters are before the input parameters.
+
+RATIONALE
+ GMP MP cannot be used for rubust programs. LibTomMath
+ is too slow, probably because of all memory allocations,
+ and has an nonintuitive API. Hebimath is promising, but
+ I think it can be done better.