Self-reference Vs. Self-reproduction

As an answer to the question “are there finite mathematical descriptions that are not effective” posed by Hilbert, Turing provided the halting function as being not effectively computable despite being finitely expressible. This he established by devising the mechanism of Turing Machine, an abstract machine that captured the logic of thought (see Ref 1). In…


Having hard time marshalling parameters from C++ to .Net?

If you are finding it difficult to send parameters from C++ to .Net, try if you can use the following class: ——————————————————————————————————————————– #ifndef __PARAMETERS_H_A1B7ECCA_1691_43d0_ACDD_EBE1208005F9#define __PARAMETERS_H_A1B7ECCA_1691_43d0_ACDD_EBE1208005F9#include <Comdef.h>#ifdef _DEBUG  #define NO_ERROR_CHECKING FALSE //Use Error Checking for Debug Versions (throws Exception from Constructor !!)#else  #define NO_ERROR_CHECKING TRUE //Turn-off Error Checking for Release Versions#endif#ifndef _MFC_VER //Check if this is…


How to return String-Arrays from C++ COM component to C#?

Want to return an array of strings from native COM component to managed code? You need to declare the string array as SAFEARRAY(VARIANT) in the COM code. IDL for the function that returns the array of strings for the COM component would look like,       [id(1)] HRESULT GetStringArray([out] SAFEARRAY(VARIANT)* StrArray); The C++ implementation of the…


Rent the OS

Wouldn’t it be nice if we could make our OS pay-per-use? We could rent our OS and all the required programs and let the customer pay per day or month as per his usage. We could host all our office programs, all our OS on Windows Live and let the users have some dumb terminals…


Avoid Registration Free COM manifest problems with Activation Context API

Having difficulties while loading the Side-by-Side assembly manifests for Registration-Free COM? Perhaps Activation context API could come to your rescue (Ref: The activation context structure lets you explicitly specify the path of the manifest to be loaded, among other things, using the CreateActCtx and ActivateActCtx functions. In the sample code below, when we try…


How to Modify Managed Strings in Native Code?

Want to modify a managed string passed to a native function? I collected two ways of doing it. Either you can use System::Text::StringBuilder mechanism or you can use the array method mentioned at You can pass the string that you want to modify as a one-element string array to the native code and modify…


Sequence Modeling

Starting a new page at to discuss research ideas on the theory of sequence indexing and Sequence Modeling


Treasure hunt in Virtual 3D World Maps ??

After listening to the Windows Live keynote demonstrating the 3D World Maps (where we can roam in the virtual cities on the earth) I started dreaming about playing treasure hunts in that virtual earth online with other virtual earth visitors. How about hide and seek in virtual new-york or virtual London?? With all those 3D buildings coming…


Sequence Indexing

On this page I’ll try to summarize my research concepts and ideas on the theory of Sequence Indexing. The theory of Sequence Indexing deals with the notion of  structured Enumeration, the mathematical concept of counting objects. It tries to answer one simple question: Given a collection of objects – how to create, access and identify…


Establishing the existence of uncountable number of Accelerated Turing Machines

Abstract. We examine the converse of Church-Turing thesis and establish the existence of uncountable number of Accelerated Turing machines, which leads to the conclusion that these machines are unaffected by Gödel’s incompleteness theorem.  The Converse of Church-Turing Thesis  In general terms, the Church-Turing thesis asserts that every effectively calculable function is computable by Turing machine. A…