Skip to main content.


This is the archive for December 2007

Thursday, December 27, 2007

I don't believe in destiny. Yet I find interesting, if not intriguing, that it's everyone's experience that, at times, a series of events, all pushing you forward in the same direction, strikes you.

Exactly when you need it the most, it happens. Love, work, hobby, school, passion... at times we want them, at times they just fall on us.

I think it's creative chaos working in the same direction of our attention. When we synchronize with the world, where a lot of things happens at the same time, we begin being object of those events that normally happens, but that we didn't "accept" or "receive" before.

The most interesting thing of this, is that it seems to happens most effectively when the process of synchronization with the surrounding chaos happens below the limit of our conscience.

How many songs say, and how many times we said, "Just when I stopped searching for you, I found you."

Sunday, December 23, 2007

In everything I do, I am urged by the need to be clear. So, pressed by this need, I become verbose. I meditated over this, and understood that people, that minds, like to think, and not to read. Reading is a pleasure when it starts or follows thinking, not when it deprives the reader of every though.

From this time on, except when needed (i.e. software documentation or novels), I want to be brief. I don't want to say, I want to suggest. I don't want to tell, I want to inspire.

Thursday, December 20, 2007

A new era for the Mankind has just begun.

As many times in the past, when something exceptional happens, at firsts, it gets hardly noticed. Often, when who holds the power finds out, it is hidden, bended... but it cannot be canceled. It may take time, but in the end, the events bound to change the destiny of the mankind always carry out their task.

Lakota "Tribe" (according to someone, "Nation" according to the facts) has rejected the treaties signed more than 150 years ago with the government of U.S.A. as "Empty words", repeatedly infringed by those who have forced the Lakota into signing them.

Read the news here: The press release.

I am writing below the letter I sent them to hail their Nation, and the reasons why I think this is the first day of a new era.

Tuesday, December 11, 2007

I am beginning to feel very satisfied with the VM model as it is now. The only thing that IMHO needs a small refine is the concept of "sequence" and the iterator interfaces; in this way, List class instances could be directly provided as sequences under every condition (i.e. they may be used in functional evaluations), and there would be space for different kind of sequences as i.e. fixed size tuples.

What that doesn't satisfy me is API structure; the module loader, the streams, the error handlers and the runtime must be a bit finetuned to work be a little more smart in cooperating with the VM.

Since I am there, note to me: provide defaults for virtual base class "Stream" (stubs setting the "unsupported" error in the stream).

Other than that, I want to redesign and some of the function prototypes, namely pointers vs. reference parameters. The following convention must be used:

1) when passing or returning an instance always use by-reference, unless...
2) the called (or calling) function is directly interested in the memory area where the instance resides. In example, GC, memory management, table indexing and so on.

Other than that, a full review of naming convention is now in order. There's too much confusion between length and size, and there are too many places where a getXXXX() accessor should be simply XXXX().

One last step before blessing the engine and passing to the 0.9 stage (that is, pure optimization and code cleaning) may be the removal of RTL as a separate module and its integration in the ENGINE; I would still have it as a separate module object for better inspection/mangling, but having it in the engine DLL/SO would prevent the need for a FlcLoader? in pure embedded applications. It's size has become so small with respect to the engine that it is not anymore that important to have it in another file, and I plan to make it still smaller. OTOH, the assembler should now be removed from the engine, and turned into i.e. a static library just for usage in command line tools or in very specific applications willing to disassemble and reassemble some Falcon module.

The size of the assembler should be 1/3 to 1/2 of the RTL.

In the optimization step it is important to review the VM stack. The final stack should be multiframed (one small stack per frame level) rather than monolothic and undifferentiated as it is now. The time needed to copy a small portion of parameters during function calls should be more than balanced by easier access to local variables and parameters and less big-stack copies while growing-shrinking.

Saturday, December 08, 2007

Using webcam-server, a software for Linux, I am publishing through this site a webcam stream from my home office.

The link is added to the menu of this page. I am not always online, but when I am, I can be reached through PM in this site, and you can see me sitting in front of the webcam.

Have fun!