4 ms·
You are not supposed to look at the output code. The only relevant thing is if it does what it's supposed to do.
by kreetx 7y ago
You are not supposed to look at the output code. The only relevant thing is if it does what it's supposed to do.
- bryanrasmussen 7y agosome times, not very often it is true, you need to look at the output to figure out why your code is not doing what it is supposed to do.
- cygned 7y agoAs an example, I'd argue that the output of the Svelte compiler is surprisingly understandable. https://svelte.dev/repl/f104bac93c9c48f5bd18322e3b9b9425?version=3.20.1 https://svelte.dev/repl/f104bac93c9c48f5bd18322e3b9b9425?ver...
- bryanrasmussen 7y agoin comparison to what comes out of some webpack things I've looked at, yes it looks more readable. Offhand I don't agree with all their undefined lets there, but not a big issue either.
- chrismorgan 7y agoAll those undefined lets are part of how Svelte components are constructed, and it can’t be done in any other way across the board. It may not be how you’d write such things manually, but for compiler output it’s sane. For simple cases like that one, the create (c) lifecycle method could essentially be shifted up into the let statements, but for some more complex cases that couldn’t be done, and if hydration is enabled it definitely can’t be done, because those variables can then be filled in one of two ways, creating (c) new nodes or claiming (l) existing nodes.
- tpetry 7y agoAre you kidding? It's at some point understandable when looking a minute at it, but this only a small hello world app. How will you be able to understand the generated code with a few dozen components and much more logic?
- jbergens 7y agoGreat demo, even though I don't agree that it is easy to understand. I have to try a larger program and see what it emits but I don't think junior developers will think it is easy. And trying to find your bugs if you connect things to the wrong component/part might be very hard to spot. I still think React dev tools are way nicer.
- kreetx 7y agoSure, but are people looking at the artifacts that other frameworks generate? I think generated code is mostly interesting to the framework devs themselves and not to most others.
- bryanrasmussen 7y agoas I said, seldomly, but I did have to spend several days recently looking over webpack output to figure out what was wrong. Also I remember one time in a previous consulting job a developer who was not very good had used an instruction to not show something if env was prod, but forgotten to end if, which caused module compilations using the horrendous babel/gulp setup to break in the middle of one module but finally start working again in another one, meaning that there were parts of the applications that were trying to refer to a module # 31 or something like that which was no longer present in the big object that was put out of compiled modules. (this is like 3-4 years ago now) Since it was not showing something if env was prod, if env was dev no problem. That meant I had to take the output of the prod build and walk through comparing with dev build to figure out what modules were not compiled in, and then figure out from that were the likely error was and then looking in those places with git blame to say what was done wrong.