Thursday, July 06, 2006

The Functional Programming paradigm influence

The idea to work on the problem of trying to understand 'deep' the Net seems quite illogical for a person that is just joining the Networking community. The excuse I find for myself to doing such a thing comes from my previous research experience in Functional Programming. It was about a novel computing paradigm that its advance would be driven by cheap computing power implying distributed architectures and novel software paradigms. Imperative (classic) software was inadequate to program a massively parallel system and software costs were rising, hence programs should be constructed differently, they would be accompanied with their proofs appended to their manuals. This was the background framework that conditioned by meeting with the Net. Work duties demanded my deeper understanding. It was not just to configure some system or be a power user of email for example. I had to get under the hood and make things move.

Now I look at it, reality moved differently: the free software phenomenon (started by Stallman, strongly coupled with the phenomenon of internet) accumulated enough eyeballs to drop software costs and program the massively parallel beast that took various names like "arpanet", "internet" and "web". The cheap computing power meant for the Functional Programming supposed to drive novel architectures like thous of cpus arranged in cubical networks came about in the form of cheap supercomputers (aka linux clusters).

Of course, the in-secure programming methods, at present, does bring back the issue of costs due to software so the story of secure (quality) programming is not over yet. Turchin stated alound recently that REFAL is better than XML and tools such as XSLT seem to bear the influence from Functional Programming. Dave Farber also thought of Fuctional Programming for the Net by the name "active networks" in mid 90s. A lot of Functional Programming went to JAVA (certainly a Net programming language) like the concept of garbage collection. Guy Steele was the JAVA spec editor for example and this cannot be just a coincidence.

All and all I am saying is that Internet Systematics was not just a crazy idea but the direct influence of Functional Programming. The different levels (layers) of automation.

A picture about the evolution of the Net

Once the course was set to understand the Net, I made the working hypothesis that this is going to come about through examing the advances that have taken place and constructing their interpretation. At some point I came upon a broschure by Larry Roberts the Arpanet director. He had a timeline of advances starting from Guterburg's press, the photography, the radio and the TV and finally marking the computer and the computer network. From there my idea of "evolution" as reference model got a firm base.

Researching the topic of the Domain Name System, trying to understand what kind of computer artifact it is because first of all it was definately a point of major innovation of the Net. Marshal T. Rose made a reference to the "time honoured tradition of the host.txt file" thus registering it as a notable change.

So I raised the question "what is the DNS step ?" at the time where the so called DNS wars were on full swing and the name of Jon Postel, as the initial point of control of Internet names. Before I present this sub-system, I will remain for a while on some points of generality concerning the issue of forming a Net picture.

My investigation brought me to Postel's proposal to R.Khare to collect all technical data concerning the construction of Internet and see what it comes out of it. So the idea to form a picture of the Net is a legitimate one. So I moved ahead.

Next thing that I considered as a major problem was my position on this research course. Places such as the IETF and the WGs (later other means such W3C followed) are places where the resources of information are created. How was I to do something useful while not participating inside them ? The answer came from an email by F.Baker on the issue of "pseudo-area".