By scaling I mean that one can start with a length of say, 6 bytes for an address, and scale up to something on the scale of 2^128 bytes if necessary, without having to process each byte individually to see if it includes an "extend" bit.
So what are you going to do? Something like the structure (below).
Code: Select all
struct tAddress{
u8 byteCount;
u8 byte[]
};
I didn't mean doing arithmetic on the addresses, which is, by the way, also rather efficient.
You will have to elaborate more on this.
And, to tell the truth, transpointers and transclusions have been around since the 1960s -- they just have never been included in the basic structure of an OS.
Ok. Back to my previous post which gives a example of a data structure that represents exactly what you specify. I would like you to tell me that this has never been included into the basic structure of an OS, and _exactly_ where it would be useful to include it. If you can not answer this directly and correctly then just tell everyone including me. Here is my example:
Code: Select all
struct aStruct;
struct aLink{
struct aStruct *link;
struct aLink *next;
};
struct aStruct{
u32 data;
struct aLink *forward;
struct aLink *backward;
};
The enfilades and transpointers/transclusions are primarily the domain of the filesystem in XANA,
And.....
but since the only supported executable format is a bytecode that is built into the filesystem, one can easily see why these additions are a big deal.
Oh. Here is the part to the "And" (above). Ok. So I should easily see the connection between the:
bytecode,
filesystem, and
transpointers/transclusions. Umm. Well. I see a lot of things. Actually too many. Whats the point?
In fact, I'm using enfilade spans, which is akin to having a pointer to individual slices of more strings than there are grains of sand on earth, each with up to 2^64 versions (being able to access individual versions), each of a size possibly bigger than 4GB, with the slices being capable of spanning between 1 byte and the entirety of all of the strings.
So this one 'magical' pointer can point to multiple locations using just one value, right? Or. Maybe you flew out into the magical land of concept thinking again instead of actual concrete practicle examples here. So I will, out of regard to you actually not being crazy, try to find a logical explanation:
You mean a pointer as something unlike a C pointer which actually has the ability to point to multiple places. Ok.
So
each of these pointers to the individual slices of strings have up to a maximum of 2^64 versions. Ok. You swam out into a ocean and dived under the water only to find a lonely rock and some talking plankton.. the plankton said let me try, out of regard to you actually not being crazy, try to find a logical explanation:
So. Each of these pointers point to a version of some data which has a cap of 2^64 versions. And able to access individual versions. So you are going to use this enfilades address in a enfilade span as a pointer would be used in C to point to these data chunks..
Code: Select all
struct aEnfiladeAddress{
u8 byteCount;
u8 byte[]
};
struct aEnfiladeSpanPointer{
struct aEnfiladeAddress address[0xFFFFFFFFFFFFFFFF]; /// we would in a practical situation try to dynamicaly allocate.
struct aEnfiladeAddress length[0xFFFFFFFFFFFFFFFF];
struct aEnfiladeSpanPointer *next;
};
struct aEnfiladeSpan{
struct aEnfiladeSpanPointer *first;
};
Oh by the way, I AM borrowing this from application development (to be more precise, it is an extension of ideas presented by Project Xanadu in their original hypertext project, which predates the world wide web, and is, in my opinion (and the opinion of most of its creators), superior to today's world wide web). That is the reason I'm using a higher level language (D rather than C), since C would make implementation of even the Enfilade by itself quite needlessly complex.
I searched Google before I ever posted in this forum just to see what sort of crazy crap you were up to. Honestly. The site I found looked like total bull ****. Actually it almost seemed like the primary goal was just to take normal technical terms and turn them upside down just to confuse people into thinking it is something really new and exciting. I mean...
Here is the original link I looked through:
http://xanadu.com/index.html
This in unfair, but you are unfair in the wording so I think it would be acceptable to bait people to read this first.
http://en.wikipedia.org/wiki/Vaporware
Then read this afterwards.
http://en.wikipedia.org/wiki/Project_Xanadu
Ok. You are most likely in the wrong forum or sub forum to be more exact. This is in my opinion why nothing makes sense. Everything you are doing is conceptual and not formatted or developed into a practical form. So blabber about it in the development forum where people generally or used to post ideas. People in this forum most likely expect, like me, practical things. Stuff that has been implemented and sports some functionality. I do not want to talk about computer philosophy, but instead actually making something work.
Here is something funny:
http://groups.google.com/group/rec.humo ... b41c16772c
And just as a side note: I actually take offense when someone throws bull at me just because they assume I will not actually read what they wrote. I will just pick and pry until I find out if it makes sense or not. So good luck..