This article compares two styles of building data structures and data structure libraries in C++: (a) Intrusive data structures formed by pointers stored inside the application objects, (b) Containers where auxiliary objects form the required data structure, and only point to the application objects without adding any pointers or other data to them.
Read the rest of this entry »
What: We are developing a tool to track variables and their values in C programs as they change at runtime. Because of the low-level, unrestricted memory access the language allows, the challenge lies in collecting accurate information without disrupting the program’s execution. Our approach combines techniques from profiling with memory tracking to analyze dynamic allocation throughout the lifetime of a program.
Read the rest of this entry »
Many simple programs that you have written up to now have undoubtedly consisted only of a main() function that performed all the necessary steps to solve that problem. Yet, you were always encouraged to break the problem down into one or more subprograms or functions. When you break a program down into a series of functions, you are doing what is called functional abstraction. This book begins with a formalization of this process of functional abstraction: its methods, techniques, benefits, and so on.
Read the rest of this entry »
Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming. Python’s elegant syntax and dynamic typing, together with its interpreted nature, make it an ideal language for scripting and rapid application development in many areas on most platforms.
Read the rest of this entry »
In October of 1976 I observed that a certain algorithm – parallel reduction – was associated with monoids: collections of elements with an associative operation. That observation led me to believe that it is possible to associate every useful algorithm with a mathematical theory and that such association allows for both widest possible use and meaningful taxonomy. As mathematicians learned to lift theorems into their most general settings, so I wanted to lift algorithms and data structures. One seldom needs to know the exact type of data on which an algorithm works since most algorithms work on many similar types. In order to write an algorithm one needs only to know the properties of operations on data. I call a collection of types with similar properties on which an algorithm makes sense the underlying concept of the algorithm. Also, in order to pick an efficient algorithm one needs to know the complexity of these operations. In other words, complexity is an essential part of the interface to a concept.
Read the rest of this entry »
24 Sep
Posted by jj as Multimedia
We present a vision system for the 3-D model- based tracking of unconstrained human movement. Using image sequences acquired simultaneously from multiple views, we recover the 3-D body pose at each time instant without the use of markers. The pose- recovery problem is formulated as a search problem and entails finding the pose parameters of a graphical human model whose synthesized appearance is most similar to the actual appearance of the real human in the multi-view images. The models used for this purpose are acquired from the images. We use a decomposition approach and a best-first technique to search through the high dimensional pose parameter space. A robust variant of chamfer matching is used as a fast similarity measure between synthesized and real edge images.
Read the rest of this entry »
This paper explains our efforts to add Ada to Microsoft’s family of .NET languages. There are several advantages to weaving Ada into the Common Language Environment provided by the .NET environment. This paper explains our approach and current progress on the research. We provide the means to extract Ada specification files from Microsoft Intermediate Language (MSIL) code and compile Ada programs into MSIL.
Read the rest of this entry »
23 Sep
Posted by jj as Development
Over the last several years, computing systems based on adaptive learning with fine-grained parallel architectures have moved from obscurity to front-page prominence. These systems derive some of their novel architecture from ideas gleaned from biology, hence the name “neural network”. Although many of the ideas behind this field are not new, improved computing hardware, better understanding of learning algorithms, and limitations of traditional approaches have combined to renew interest in neural nets.
Read the rest of this entry »