Posts Tagged ‘callgraph’

Punctuated equilibrium in the large-scale evolution of programming languages | Journal of The Royal Society Interface

Tuesday, September 22nd, 2015

Punctuated equilibrium in the large-scale #evolution of #programming languages Clustering groups these into trees

Punctuated equilibrium in the large-scale evolution of programming languages
Sergi Valverde, Ricard V. Solé

Distributed Information Processing in Biological and Computational Systems

Monday, January 26th, 2015

Distributed Info. Processing in Biological & Computational #Systems Contrasts in strategies to handle node failures

While both computational and biological systems need to address these similar types of failures, the methods they use to do so differs. In distributed computing, failures have primarily been handled by majority voting methods,37 by using dedicated failure detectors, or via cryptography. In contrast, most biological systems rely on various network topological features to handle failures. Consider for example the use of failure detectors. In distributed computing, these are either implemented in hardware or in dedicated additional software. In contrast, biology implements implicit failure detector mechanisms by relying on backup nodes or alternative pathways. Several proteins have paralogs, that is, structurally similar proteins that in most cases originated from the same ancestral protein (roughly 40% of yeast and human proteins have at least one paralog). In several cases, when one protein fails or is altered, its paralog can automatically take its place24 or protect the cell against the mutation.26 Thus, by preserving backup functionality in the protein interaction.

While we discussed some reoccurring algorithmic strategies used within both types of systems (for example, stochasticity and feedback), there is much more to learn in this regard. From the distributed computing side, new models are needed to address the dynamic aspects of communication (for example, nodes joining and leaving the network, and edges added and being subtracted), which are also relevant in mobile computing scenarios. Further, while the biological systems we discussed all operate without a single centralized controller, there is in fact a continuum in the term “distributed.” For example, hierarchical distributed models, where higher layers “control” lower layers with possible feedback, represent a more structured type of control system than traditional distributed systems without such a hierarchy. Gene regulatory networks and neuronal networks (layered columns) both share such a hierarchical structure, and this structure has been well-conserved across many different species, suggesting their importance to computation. Such models, however, have received less attention in the distributed computing literature.


Universal distribution of component frequencies in biological and technological systems

Monday, April 8th, 2013

Linux call graph hive plots

Wednesday, February 13th, 2013

paper/talk on software networks

Sunday, September 23rd, 2012

From C Myers:

Some links to a paper examining the structure of software networks and their connection to biological networks. “Much of the software design involved object-oriented programming (with networks describing interactions among classes, rather than among functions as in procedural call graphs);” Thus, perhaps some of the conclusions are specific to OOP.