use dependency inversion for language standardization and comparators
Merge branch 'develop'

* develop:
  use dependency inversion for language standardization and comparators