add erlang and haskell support