Ok I'm bought in, where do I sign up to make this problem go away?
From youtube.com/watch?app=desk
Conversation
Replying to
We need a different kind of optimizing compiler to collapse layers but oops we don't have semantics...
I starts to look like there is just no solution to the pile-on, apart from throwing things out and rebuilding. But who has time for that? I am not an optimist.
2
2
You mean a compiler that handles the different serialization / deserialization between data formats?
1
That would be part of what it produces, yes, but my point is more that this is virtually impossible because there is no real definition of what the layers mean such that a compiler can use this meaning to mechanize code generation.
1
In an ideal setup, the meaning of user clicks and pixels on the screen should be directly related to database state updates by some abstract description. Everything in the middle is just "implementation" of this description.
1
But that is not how we build code. Someone writes an opaque mechanism where "the implementation is the meaning", and someone else builds exactly the same kind of thing on top of that, just a little bit different. So you get layers that a compiler cannot see through.
I don't have a practical solution btw. Even in my own very isolated world where a lot is written from scratch, I run into this issue all the time... Something that has helped me to structure code is to ask "could I in principle write a compiler for the code I'm writing manually".
1
If there is no "reducer", complexity is always just going to grow, because that is the easiest way to build something to solve a problem. However to build a "reducer" or "evaluator", you need a way to define meaning other than a black box implementation.
1
Show replies


