This paper seeks to show that some of the mathematical framework of quantum mechanics "pops out" of some intuitive (depends on your perspective i guess) machinery from classical mechanics. It doesn't really mean much fundamentlly, and doesn't really reflect the historical derivations of the equations, but it is interesting to look in retrospect how readily some of these equations pop out from seemingly basic frameworks.
Its also interesting to consider the actual historical discovery of these concepts, or any scientific concept that generalised existing theories to a far deeper and more unifying result (e.g classical -> quantum mechanics, newtonian mechanics -> general relativity). You are required to somehow develop a theory that not only extends beyond horizons currently seen, but also one that correctly replicates the theory it seeks to supercede. And of course, you are limited to theoretical tools you already know, since no-one has yet figure a way to reach into the future and pluck out a more suitable notation or mathematical framework. Its like a literary character trying to write the story it is embedded in.
Of course, there are always hints to the keen observer, especially tucked away at the foundations: much of special relativity unravelled itself directly from the laws of electromagnetics, since in the equation the speed of light is never specified, and the naive galilean assumption that everyone made - that time and space are absolute, and speeds must be specified relative to observers - was the veil obscuring our vision. If you take the courage to abandon the doctrine of absoluteness of time and space, and to declare that the speed of light doesn't need to be specified in terms of some preferred reference frame, since the speed of light is invariant for all observers everywhere throughout the universe, the intractable gulfs seperating what we know from what we don't vanish like a mirage, and meld together naturally into a more fundamental, and unified theory.
And we can take the same step again, by noticing the strange coinicdence that in Newton's theory of gravitation and mechanics, the inertial mass happens to exactly equal the gravitational mass, magically cancelling each others contribution. If we declare that these two phenomena are infact exactly the same thing seen from different perspectives, and we realise that the apparant difference between somebody accelerating and somebody falling is an illusion, obscuring the fact that both are simply bodies taking the shortest path through the warped 4-dimensional manifold of spacetime, we once again unify all of our observations into a elegant, geometric theory of immense power and stunning beauty, one that can peer into the hearts of dead stars, and into the birth of all things, despite being first revealed in the brain of an absent minded jewish man, sitting in a cluttered office filled with pipesmoke, in a time where europe was fragmented from the collapse of empires and feudal houses, with wars fought with bayonets and horses still in living memory.
This is quite the religious notion if you think about it.
In theory Elm is just such a fascinating project... if it was not held back by the people developing it.
Weren't they?
Weird line.
But, other visions of programming have coexisted with this main educational vortex, including logic programming like Prolog. Actually, if you have heard of any of these alternates, you have probably heard of functional programming, which can be ahistorically understood as saying “hey these locks and races and all that, it's actually very complicated, maybe we could have a simpler model of programming for 90% of our work and only break out the Java when we really need it.” And you’re like “what will you replace it with?” and they respond “Template substitutions! It's all the power of lexicographic scopes, all the power of looping (via recursion), but when you want to express the really complex stuff you need templates that have side effects when substituted, we can give those scary names.” So you give me a sunbeam and a raincloud and I give you back a rainbow.
If that's the functional programming idea then logic programming takes the same idea but adds unification and search. The idea is “ok but why do I have to fill in all the parameters to a template before I use it? I should just say “if light shines on a droplet-cloud it makes a rainbow, a sunbeam is a light, a raincloud is a droplet-cloud, hey language, what are all the things that make a rainbow?”
Functional programming was based on the function, the template, the “I take these args and produce a structure looking like such-and-so.” Logic programming is based on the Horn clause, “X verbs Y, for some entities X and Y that I maybe know about and some verb that I am being introduced to.”
Basic things that logic programming does very well, OOP kind of struggles with. You can kind of understand this if you have written a SQL query. The verbs can be thought of as tables that foreign-key to X and to Y, if you want to write OOP to solve a logic puzzle you have to choose explicit ways to search or brute force... SQL DBs come with B-trees and indexes to solve a lot of these problems. Whereas with Prolog you just write the pattern to match and the new pattern to emit.
It's a rather different take on what the building blocks should be.
That said, compiling your web content into your server? That's a step too far. Data and the application that process that data are two very different things, and (imho) should remain separate.