A Language-based Approach for Interoperability of IoT Platforms