Monday, November 22, 2010
by Sandy Klausner
editor’s note: Sandy Klausner is the founder and CEO of CoreTalk Corporation, the designer of the Cubicon programming language, described at http://www.coretalk.net/. The opinions and concepts proposed by Sandy reflect his thinking about new types of programming languages, and web-based architectures including Cubicon. SENDS does not endorse any specific product, but seeks to ensure members and guests of the Private-Public partnership of the SENDS Consortium are aware of novel thinking proposed by those associated with the Consortium and its efforts.
As reflected throughout the SENDS Blog (here and here, for example), the SENDS Project seeks to understand the nature of cyberspace as a complex adaptive system (CAS) as well as reflectively thinking about cyberspace itself as a meta-system. Not only is cyberspace characterized as such a CAS, but increasingly the computer architectures and programming languages that support cyberspace-based communications must also support these levels of functionality.
This functionality, discussed previously, includes the processes of exchange, self-organization and emergence. Let’s look at each of these through the lens of computer network architecture.
Exchange – The exchange of concepts and information requires a semantic basis to enable software agents to infer relationships and manage content and services without human intervention. This machine processing requires unprecedented levels of automation to support massive exchanges between billions of people and information transactions around the world. New graphical languages must enable domain experts to create, share and execute software agents that process knowledge, transact services and enable social networking to evolve to new levels of collective intelligence.
Self-organization – People, systems and information need the ability to self-organize through cyberspace. Such capability mandates a new computer science, infused with the inspirations of complexity science, where software artifacts are inherently recombinant to energize self-organization. This first principle science will enable unprecedented levels of interactions and interoperability that can be visualized as dynamic system models.
Emergence – As noted in Carl Hunt’s earlier blog, this self-organization process is the transmission that moves exchange into emergence. Emergence of novel behaviors, fresh opportunities and new organizational structures must be simulated in new graphical languages that support cyberspace evolution, providing insights into complex cyberspace realms. These visual simulations will be easily shared across domains, providing novel ways to understand complex systems and provide continuous dynamic feedback to all participants in knowledge evolution.
Borrowing from the SENDS blog on “Ecospace”, Figure 1, below, helps to visualize the major interactions that take place to create both the opportunity and the requirements for coevolution within cyberspace and its interacting elements. Service exchanges and knowledge processing are at the heart of this interaction. The figure also depicts several categories of emergence that are both ingredients and products of the coevolving world of massive interconnectivity that cyberspace enables.
There are two basic forms of systems that coevolve with each other through exchanges and processing that compose cyberspace: human systems and machine systems (together they accommodate the production of something useful). Emergent characteristics from human and machine behaviors, technologies, cultures and governances all synergize to produce what we recognize as cyberspace.
The services that we introduce to make the network valuable as well as the threats to those services are also part of the coevolving landscapes. Just as in predator-prey models of ecosystems, the threat is an integral consideration of a holistic perspective of cyberspace. Finally, both natural and artificial adaptations take place that ensure cyberspace is a constantly changing, coevolving environment that truly requires the augmentation of more modern architectures and graphical programming languages.
Figure 1 - The Programming Language-Architecture View of the Cyberspace Ecology (courtesy CoreTalk Corp.)
New Software Paradigm will Manage Systems Complexity
The gap between generational advances in hardware (Moore’s Law), users’ application demands, and software’s ability to productively utilize both continues to expand … with no end in sight. This gap can only be closed by greatly automating the software life cycle that can effectively overcome complexity bottlenecks.
A new software paradigm must address seven fundamental cyberspace complexity challenges that can be characterized in the following ways:
Semantic Web – As RDF & OWL remain underutilized, a graphical language must provide the required formalization of ‘context’ and ‘community’ architecture to fully support a global semantic substrate across cyberspace
Service-oriented Architecture – As SOA remains too ad hoc, new approaches must provide the requisite technology for machine-to-machine (M2M) interactions to truly scale across billions of devices
Smart Grid – As hard real-time environments are difficult to encode, a graphical language and a contextualized infrastructure must provide the following capabilities for a National “Smart Grid” to be realized sooner:
- ability to create and evolve interoperable standards
- mediation of services between disparate devices in a community
- execution environment that deterministically processes events in real time
“Manycore” processing – As threading is failing to scale, a fused software/hardware architecture must provide an effective parallel programming mechanism that can harness the power of emerging “manycore” processors
Software re-use – As current programming language ecosystems lack componentry architecture, a recombinant technology must enable a fertile exchange of high value intellectual property assets
Malware – As current immunization technologies are increasingly less effective, next generation programming must prevent malware infiltration through a robust ‘whitelist’ security model for all software components and apps
IP (intellectual property) tracking & licensing – As the Open Source model lacks a viable business model, a graphical language must ultimately support the ‘Open Design’ software model that provides direct compensation/recognition for authors based on virtual supply chains
As a proponent of what the SENDS Project calls “Open-Source Science,” these discussions about new, exchange-based programming languages and architectures are an important augmentation not only to a science-based approach to understanding cyberspace, but to spur greater innovation in the development of these capabilities.
I think the Cubicon programming language that CoreTalk has designed is consistent with the principles SENDS initially proposes for architecture and language development. As is the case with all open-source evolution, however, the market and its users will decide. In the meantime, the public-private partnership SENDS seeks to leverage is a viable path forward to doing good science in cyberspace and generating more secure environments for national and global prosperity.