feature/scala support

**do not review yet**