Internet Communications Engine

It provides SDKs for C++, C#, Java, JavaScript, MATLAB, Objective-C, PHP, Python, Ruby and Swift, and can run on various operating systems, including Linux, Windows, macOS, iOS and Android.

[8] Ice components include object-oriented remote-object-invocation, replication, grid-computing, failover, load-balancing, firewall-traversals and publish-subscribe services.

To gain access to those services, applications are linked to a stub library or assembly, which is generated from a language-independent IDL-like syntax called slice.

Unlike other publish-subscribe frameworks such as Tibco Software's Rendezvous or SmartSockets, message content consist of objects of well defined classes rather than of structured text.

Slice is a ZeroC-proprietary file format that programmers follow to edit computer-language independent declarations and definitions of classes, interfaces, structures and enumerations.