## 1 Introduction  
Cyber-physical production systems (CPPS) tightly integrate the entities of cyber and physical spaces, such as scheduling services and physical execution devices, for industrial intelligent production automation [1]. To realize the control and management of a large-scale collection of dynamic heterogeneous resources involving both computational and physical components, a CPPS is endowed with autonomy, collaborative capabilities, efficiency, flexibility, and reconfigurability [2]. However, to implement a CPPS application, engineers must divide it into various parts and program each part separately because the compute devices are likely to be heterogeneous platforms and a CPPS is composed of multiple subsystems (e.g., motion control, sensor perception, and data analysis). Most programming efforts in the context of CPPS have required manual development and careful tuning, and consequently they are not scalable or extensible. This chimney-like programming pattern causes engineers enormous difficulties in programming and system integration. Thus, an easy-to-useprogramming model and an integrated programming framework that are suited to this context are required, as shown in Figure 1. The system designer can build CPPS applications directly from software components without additional development effort, which requires that the computing, temporal and geometric characteristics can be inherently handled in software components. One of the stumbling blocks hindering the achievement of integrated programming at embedded devices is the lack of a programming model for CPPS components that considers both computational and physical dynamic processes. The temporal continuity of the physical world is an intrinsic property of CPPS and affects the determinism of system behaviors in response to concurrent events, but the existing computational models do not reflect this temporal property. Likewise, the geometric spatial relationships of the physical objects involved determine the consistency of the behavior of multiple devices collaborating in Cartesian space. For example, consider a case in which two robots are performing assembly tasks in the same work area. Both of them are capable of doing the tasks alone, but when they are placed together in the same area, the outcome becomes uncertain because of the possibility of collisions affecting the physical dynamics, thus imposing both geometric and temporal constraints. This requires additional development work to coordinate them that means the system designer cannot use the software component in a \"plug-and-play\" way, which violates the intention of the integrated programming framework in Figure 1. Therefore, it is necessary to propose a programming model that can cover the above characteristics of the CPPS model. The existing programming models consider computing-related issues and partially consider temporal characteristics, but they rarely consider geometric semantics. Additional development by engineers is usually required for the relevant geometric constraints and transformations, which violates the vision of the integrated programming framework. Concerning the time-related semantics of CPPS components, the PTIDES programming model [3] explicitly models the temporal behavior of system components such as controllers, sensors, and actuators as well as computing and communication delays in the network to guarantee the determinism of system behaviors that is independent of platforms. This characteristic makes a great contribution to the design and analysis of cyber-physical system. The IEC 61499 standard provides architecture and software models for the next generation of industrial automation systems [4]. The programming model is designed on the basis of event-triggered function blocks (FBs) [5]. The FB concept extends the subroutine structure in IEC 61131-3 [6] to a functional unit in a distributed system, usually in the form of a system-level executable modeling language [7].