fogfish /datumErlang1279pure functional and generic programming for Erlangfoldabletraversableerlanglenses