In physics, we see that the closer we get to a true theory of everything, the harder it is to falsify the theory and to improve upon it, until we finally find the correct grand unified theory of everything of which no falsification is possible because it is absolutely True.

When Newton showed us the inverse square rule of gravitation, his theories stood incontestable for over 200 years, before a complete outsider to the world of mainstream physics an upstart genius working as patent clerk provided a breakthrough theory which proved the great grandfather of physics was wrong.

But why did that theory have to come from the outside? Why was it that in over 2 centuries, no physicist trained in Newtonian physics was able to over turn it?

The answer is that, brilliant as many of those minds were, they were trapped in a certain way of thinking, compounded by the natural group-think of any human endeavour, they constantly looked for proofs *inside* the accepted theorems, without knowing that they were working inside a theory which was flawed to begin with.

When Einstein came up with the theory which eventually shattered Newtonian physics, He took us a step closer to a True understanding, and raised the difficulty of the problem to a point where people believed (as many still do) that his theories are incontestable.

And yet Einstein himself knew that his theory was incomplete and could not be the whole answer. He added something he called the cosmological constant to his mathematics, and later referred to such as his biggest blunder.

Before the end of his career, other scientists began working with what was to become Quantum Theory. Einestien did not like it one bit, he referred to Entanglement as "spooky", and suggested that the universe cannot operate on probabilistic principles, because as he put it "God does not play dice with the universe".

Einstein wanted a concrete, solid, reliable and repeatable theory to explain everything, and the notion that randomness might play a key part in everything was totally objectionable to him.

And yet, over the coming decades Quantum continued to gain ground. Experiment after experiment proved and proved again the validity of the theory. The equipment designed to get to the next level of proof got bigger and more complex over time, to the point where we now in modern times have to build atom smashers many kilometers in diameter with detectors the size of cathedrals (L.H.C), to continue experimenting.

The closer we get to a True theory, the harder it becomes to falsify it, and the more energy and time it takes to do so.

So when we examine the world of computer science at the start of the 21st century, we find that we are approaching ideal solutions, but that those solutions have not yet been reached.

11 years ago Larry Wall the inventor of Perl, realised that Perl 5 was not the ideal solution, that what was infact called for was a complete rethink, and a new solution which we refer to as Perl 6. So he abandoned work on Perl 5 and got busy writing Perl 6.

The solution is not easy, and despite being recognised as an absolute genius in the field of programming, Larry along with many others have already taken over a decade working hard on the next level, to a point where still today the solution they have cannot fully parse it's own code, and the existing compilers are very slow compared with the whizzy fast older systems which they seek to replace.

The closer we get to an ideal solution, the harder it is to prove the old solution to be faulty, and to engineer the next level.

Into this arena an upstart with very little classical training in computer science has injected a new idea which the classically trained computer scientists scoff at, just as those classically trained Newtonian physicists scoffed at Einstein and his ideas.

As if a patent clerk can overturn physics... the very notion is absurd! This young lad must be insane, it is the only logical and rational explanation for his deviancy from the accepted conventional wisdom.

Software must be concrete, it must be reliable, it must conform to certain principles, everything we have learned tells us that this is so.

Software that modifies it's own source code is bad bad bad bad bad... BAD. We don't need to prove this we know it is true, CPU's don't play transformers with data!

Ladies and Gentlemen I suggest to you, that a revolution has already begun, that I have stumbled in complete ignorance over something exceptional which changes the rules of the game. I suggest that the classical notions which it breaks are faulty and the result of being confined to working with very tight limits on computing power. I suggest that modern hardware has given us the ability here and now to rethink our premises, to establish a new paradigm, to shift from needing the crutches of concreteness and things like 'strict' and 'taint', to a new level of code wherein such things are as useful as a chocolate fireguard.

I suggest to you that aXML is a working example of the future of programming, and that it already exists here and now. I suggest that it is possibly the most underrated and overlooked piece of software in the history of software engineering, and that I like that upstart of a patent clerk have come from the outside to take us to the next level of software development.

I will not be surprised one little bit if you find that claim to be absolutely ludicrous and absurd beyond belief, God after all does not play dice with the universe...


In reply to Ideal solutions in software by Logicus

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.