├── .gitignore ├── .travis.yml ├── CHANGELOG.md ├── Emakefile ├── LICENSE ├── Makefile ├── README.md ├── beam.mk ├── doc ├── category.md ├── features.md ├── generic.md ├── lens.md ├── monad.md └── typecast.md ├── examples ├── Makefile ├── rebar.config ├── src │ ├── examples.app.src │ ├── examples_generic.erl │ ├── examples_generic_io.erl │ └── examples_lens.erl └── test │ └── tests.config ├── include └── datum.hrl ├── priv └── datum.benchmark ├── rebar.config ├── rebar.config.script ├── src ├── category │ ├── category.erl │ ├── datum_cat.erl │ ├── datum_cat_either.erl │ ├── datum_cat_f.erl │ ├── datum_cat_kleisli.erl │ ├── datum_cat_option.erl │ ├── datum_cat_reader.erl │ └── datum_cat_undefined.erl ├── datum.app.src ├── datum.erl ├── foldable.erl ├── generic.erl ├── lens │ └── lens.erl ├── maplike.erl ├── maplike │ ├── bst.erl │ ├── heap.erl │ ├── htree.erl │ └── rbtree.erl ├── monad │ ├── m_identity.erl │ ├── m_io.erl │ └── m_state.erl ├── partial.erl ├── queue │ ├── deq.erl │ └── q.erl ├── sets │ ├── chord.erl │ ├── ring.erl │ └── sbf.erl ├── stream │ └── stream.erl ├── topological.erl ├── traversable.erl └── typecast.erl └── test ├── category_SUITE.erl ├── category_parse_transform_SUITE.erl ├── foldable_SUITE.erl ├── generic_SUITE.erl ├── lens_SUITE.erl ├── m_SUITE.erl ├── maplike_SUITE.erl ├── q_SUITE.erl ├── ring_tests.erl ├── stream_SUITE.erl ├── tests.config ├── traversable_SUITE.erl ├── tree_SUITE.erl └── typecast_SUITE.erl /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/.travis.yml -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /Emakefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/Emakefile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/README.md -------------------------------------------------------------------------------- /beam.mk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/beam.mk -------------------------------------------------------------------------------- /doc/category.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/doc/category.md -------------------------------------------------------------------------------- /doc/features.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/doc/features.md -------------------------------------------------------------------------------- /doc/generic.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/doc/generic.md -------------------------------------------------------------------------------- /doc/lens.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/doc/lens.md -------------------------------------------------------------------------------- /doc/monad.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/doc/monad.md -------------------------------------------------------------------------------- /doc/typecast.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/doc/typecast.md -------------------------------------------------------------------------------- /examples/Makefile: -------------------------------------------------------------------------------- 1 | APP = examples 2 | 3 | include ../beam.mk 4 | -------------------------------------------------------------------------------- /examples/rebar.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/examples/rebar.config -------------------------------------------------------------------------------- /examples/src/examples.app.src: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/examples/src/examples.app.src -------------------------------------------------------------------------------- /examples/src/examples_generic.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/examples/src/examples_generic.erl -------------------------------------------------------------------------------- /examples/src/examples_generic_io.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/examples/src/examples_generic_io.erl -------------------------------------------------------------------------------- /examples/src/examples_lens.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/examples/src/examples_lens.erl -------------------------------------------------------------------------------- /examples/test/tests.config: -------------------------------------------------------------------------------- 1 | {suites, ".", all}. 2 | -------------------------------------------------------------------------------- /include/datum.hrl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/include/datum.hrl -------------------------------------------------------------------------------- /priv/datum.benchmark: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/priv/datum.benchmark -------------------------------------------------------------------------------- /rebar.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/rebar.config -------------------------------------------------------------------------------- /rebar.config.script: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/rebar.config.script -------------------------------------------------------------------------------- /src/category/category.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/category/category.erl -------------------------------------------------------------------------------- /src/category/datum_cat.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/category/datum_cat.erl -------------------------------------------------------------------------------- /src/category/datum_cat_either.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/category/datum_cat_either.erl -------------------------------------------------------------------------------- /src/category/datum_cat_f.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/category/datum_cat_f.erl -------------------------------------------------------------------------------- /src/category/datum_cat_kleisli.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/category/datum_cat_kleisli.erl -------------------------------------------------------------------------------- /src/category/datum_cat_option.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/category/datum_cat_option.erl -------------------------------------------------------------------------------- /src/category/datum_cat_reader.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/category/datum_cat_reader.erl -------------------------------------------------------------------------------- /src/category/datum_cat_undefined.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/category/datum_cat_undefined.erl -------------------------------------------------------------------------------- /src/datum.app.src: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/datum.app.src -------------------------------------------------------------------------------- /src/datum.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/datum.erl -------------------------------------------------------------------------------- /src/foldable.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/foldable.erl -------------------------------------------------------------------------------- /src/generic.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/generic.erl -------------------------------------------------------------------------------- /src/lens/lens.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/lens/lens.erl -------------------------------------------------------------------------------- /src/maplike.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/maplike.erl -------------------------------------------------------------------------------- /src/maplike/bst.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/maplike/bst.erl -------------------------------------------------------------------------------- /src/maplike/heap.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/maplike/heap.erl -------------------------------------------------------------------------------- /src/maplike/htree.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/maplike/htree.erl -------------------------------------------------------------------------------- /src/maplike/rbtree.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/maplike/rbtree.erl -------------------------------------------------------------------------------- /src/monad/m_identity.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/monad/m_identity.erl -------------------------------------------------------------------------------- /src/monad/m_io.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/monad/m_io.erl -------------------------------------------------------------------------------- /src/monad/m_state.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/monad/m_state.erl -------------------------------------------------------------------------------- /src/partial.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/partial.erl -------------------------------------------------------------------------------- /src/queue/deq.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/queue/deq.erl -------------------------------------------------------------------------------- /src/queue/q.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/queue/q.erl -------------------------------------------------------------------------------- /src/sets/chord.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/sets/chord.erl -------------------------------------------------------------------------------- /src/sets/ring.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/sets/ring.erl -------------------------------------------------------------------------------- /src/sets/sbf.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/sets/sbf.erl -------------------------------------------------------------------------------- /src/stream/stream.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/stream/stream.erl -------------------------------------------------------------------------------- /src/topological.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/topological.erl -------------------------------------------------------------------------------- /src/traversable.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/traversable.erl -------------------------------------------------------------------------------- /src/typecast.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/src/typecast.erl -------------------------------------------------------------------------------- /test/category_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/category_SUITE.erl -------------------------------------------------------------------------------- /test/category_parse_transform_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/category_parse_transform_SUITE.erl -------------------------------------------------------------------------------- /test/foldable_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/foldable_SUITE.erl -------------------------------------------------------------------------------- /test/generic_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/generic_SUITE.erl -------------------------------------------------------------------------------- /test/lens_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/lens_SUITE.erl -------------------------------------------------------------------------------- /test/m_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/m_SUITE.erl -------------------------------------------------------------------------------- /test/maplike_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/maplike_SUITE.erl -------------------------------------------------------------------------------- /test/q_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/q_SUITE.erl -------------------------------------------------------------------------------- /test/ring_tests.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/ring_tests.erl -------------------------------------------------------------------------------- /test/stream_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/stream_SUITE.erl -------------------------------------------------------------------------------- /test/tests.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/tests.config -------------------------------------------------------------------------------- /test/traversable_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/traversable_SUITE.erl -------------------------------------------------------------------------------- /test/tree_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/tree_SUITE.erl -------------------------------------------------------------------------------- /test/typecast_SUITE.erl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fogfish/datum/HEAD/test/typecast_SUITE.erl --------------------------------------------------------------------------------