Thursday, June 14, 2012

What is a computational object?


In this sense, externalizing ideas is not a matter of emptying out the mind but of actively reconstructing
it, forming new associations, and expressing concepts in external representations while lessening
the cognitive load required for remembering them: “Externalization produces a record of our mental
efforts, one that is ‘outside us’ rather than vaguely ‘in memory’. ... It relieves us in some measure from the always difficult task of ‘thinking about our own thoughts’ while often accomplishing the same end. It embodies our thoughts and intentions in a form more accessible to reflective efforts.” ((Bruner, 1996), p. 23)

http://l3d.cs.colorado.edu/~gerhard/papers/fi_ost-final.pdf


The computational viewpoint is directly concerned with the distribution of processing but not with the interaction mechanisms that enable distribution to occur. The computational specification decomposes the system into computational objects performing individual functions and interacting at interfaces. It thus provides the basis for decisions on how to distribute the jobs to be done, because objects can be located independently assuming communications mechanisms can be defined in the engineering specification to support the behaviour at the interfaces to those objects.


The heart of the computational language is the computational object model, which constrains the computational specification by defining:

  • the form of interface an object can have;
  • the way that interfaces can be bound and the forms of interaction that can take place at them;
  • the actions an object can perform, in particular the creation of new objects and interfaces, and the establishment of bindings.

The computational object model provides the basis for ensuring consistency between different engineering and technology specifications (including programming languages and communication mechanisms) since they must be consistent with the same computational object model. This consistency allows open interworking and portability of components in the resulting implementation.

The computational language enables the specifier to model constraints on the distribution of an application (in terms of environment contracts associated with individual interfaces and interface bindings of computational objects) without specifying the actual degree of distribution in the computational specification; this latter is specified in the engineering and technology specifications. This ensures that the computational specification of an application is not based on any unstated assumptions affecting the distribution of engineering and technology objects. Because of this, the configuration and degree of distribution of the hardware on which ODP applications are run can easily be altered, subject to the stated environment constraints, without having a major impact on the application software.

http://www.rm-odp.net/



Computational objects in object-oriented data models, Authors: Jianhua Zhu, David Maier


Computational object recognition: a biologically motivated approach, Authors: Tim C. Kietzmann, Sascha Lange, Martin Riedmiller

Heekyoung Jung, Youngsuk L. Altieri, and Jeffrey Bardzell. 2010. Computational objects and expressive forms: a design exploration. In Proceedings of the 28th of the international conference extended abstracts on Human factors in computing systems (CHI EA '10). ACM, New York, NY, USA, 3433-3438. DOI=10.1145/1753846.1753997 http://doi.acm.org/10.1145/1753846.1753997


Form and the computational object, by Ramia Mazé, Johan Redström




Temporal Computational Objects: A Process for Dynamic Surface Generation, Authors: Kurt W. Swanson, Kenneth A. Brakke and David E. Breen


Simulating an Economy with Smithian Production: Division of Labor as a Computational Object
By Roger A. McCain, http://faculty.lebow.drexel.edu/McCainR/top/eco/wps/RAMcCEastern.pdf


The Distributed Interactive Object Substrate (DIOS) forms the back-end of DISCOVER and is composed of two major components: (1) Interaction Objects that are co-located with computational objects and encapsulate sensors and actuators, and (2) A hierarchical control network that connects these objects with different interaction agents. http://nsfcac.rutgers.edu/TASSL/Projects/DISCOVER/DIOS/DIOS.html





1 comment:

  1. This looks like a really good introduction to a very interesting blog post, but where's the rest of it? What you have here so far is very abstract and general in nature. Could you tie it to a practical, real-world example or two? For example, is cdecl relevant? Show me the money.

    ReplyDelete