One of the most challenging objectives of the Internet of Things (IoT) domain is the identification of interaction paradigms and communication standards to integrate smart objects (SOs), i.e., physical objects able to interact with the network. Such interaction paradigms and communication protocols belong to what can be called the IoT application layer, on which this paper focuses. This paper presents app execution platform (AEP), a platform that supports the design, deployment, execution, and management of IoT applications in the domain of smart home, smart car, and smart city. AEP was designed to coherently fulfill a set of requirements covered only partially or in a fragmented way by other IoT application platforms. AEP focuses on SO virtualization and on composite application (CA) orchestration and supports dynamic object availability.