input/output for all data objects (arrays, functions, histograms) are based on Java serialization. There is also a support for I/O from/to C++ and other languages using the Google's Protocol buffer format. Several databases are supported (Java-object databases and SQL-based)