Enabling C++ Models in Swarm Environments
Title: Enabling C++ Models in Swarm Environments
Authors: Richard Leow 2 and Russell K. Standish 1 2
Abstract: This research presents a methodology and software tools for generating Objective-C object templates and necessary interfacing functions from a given C++ model. This allows C++ models to be run and accessed under both C++ and Objective-C environments, bridging the gap between the two popular programming languages. The research also proposes a methodology for modifying existing Swarm applications to make part of them run under the C++ environment.
Main Research Question: How can we enable C++ models to be run and accessed under both C++ and Objective-C environments while maintaining efficiency and simplicity?
Methodology: The research utilizes Classdesc class descriptor technology to parse the user C++ model and generate a relevant class description file. This file is then used to construct an Objective-C translator, which automatically generates an equivalent Objective-C object template and all necessary interface functions. The approach is designed to be efficient and simpler than existing methods, such as Daniels' COM approach.
Results: The research successfully developed a methodology and software tools for generating Objective-C object templates and necessary interfacing functions from a given C++ model. This allows C++ models to be run and accessed under both C++ and Objective-C environments, providing users with the flexibility to choose the most suitable language for their needs. The research also demonstrated that the approach is efficient and simpler than existing methods.
Implications: The research has significant implications for the field of object-oriented programming and agent-based modeling. It provides a practical solution for bridging the gap between C++ and Objective-C environments, allowing developers to take advantage of the strengths of both languages. This can lead to more efficient and effective programming in various domains, including simulation, scientific computing, and artificial intelligence.
Link to Article: https://arxiv.org/abs/0401025v1 Authors: arXiv ID: 0401025v1