|
Not really, if you're already using code generation for your source. It's more structured and standard than a custom build step.
Besides, C++ already lets you come close with all of its template magic. See also, the Spirit parser generator.
Real programmers use butterflies
|
|
|
|
|
fine, then you can debug the code that doesn't exist in source.
|
|
|
|
|
Same problem with any code generation. Your inputs aren't directly debuggable. The outputs must be debugged. But since you bring it up, I'd be willing to bet MS provides a way to debug them (i haven't used the feature yet), which would be better than you get with most code generation tools.
It seems like your real issue here is using code generation for your projects, since what you're bringing up are problems with source code generation in general.
Real programmers use butterflies
|
|
|
|
|
honey the codewitch wrote: Same problem with any code generation.
yes.
enjoy!
|
|
|
|
|
I like my parser generators, thanks.
Real programmers use butterflies
|
|
|
|
|
I refer the honourable gentleman to Jeron1's signature[^]
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Now my brain hurts. *sadface*
Real programmers use butterflies
|
|
|
|
|
Yay! Back to the future! I gave up writing self-modifying code about 30 years ago.
I knew I should have stuck to it
Mircea
|
|
|
|
|
In seriousness though this quite isn't that. It lets you do what the C++ compiler can already kind of do with clever usage of templates and consts.
The difference between self modifying and self generating at least to me, is the former does so at runtime, and in practice, jit compilers still do the self modifying thing in order to work.
But also it's clearer to see the code at compile time then doing it at runtime, because then you can examine the output. I actually write code generators for modern platforms quite a bit, like parser generators - things that are arduous or sometimes nearly impossible or completely unrealistic to do by hand.
This is a clean way to handle a situation like that.
Real programmers use butterflies
|
|
|
|
|
You can pretty much get there from here now with pre-build events. I think that's close enough for my purposes as I have done that sort of thing in the past. Actually I would rather they didn't get into it any farther than that since it's usable as it is.
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"
|
|
|
|
|
I can understand the feeling. It seems like they're adding a lot of fluff to the language. I kind of like the feature but then i've had a long (perhaps torrid) love affair with code generation in all its forms. My father was a toolmaker - his work was very meta, and so is mine. I guess I'm a toolmaker at heart, even though he didn't raise me.
I rely on pre-build steps a lot, but I haven't done pre-build scripting as such - i leave whatever heavy lifting needs to be done on the exe itself, and since i built it for being used as a pre-build step it's no problem
Real programmers use butterflies
|
|
|
|
|
I am fairly familiar with code generation. I wrote my own scripting language a while ago and then changed it internally from an interpreted virtual machine to native machine code generation. That was two tons of fun. The debugging process was unlike anything I have ever done. I wrote my own debugger for it too. Imagine running a process written in the script language being debugged using your own debugger. I guess that's no big deal but now imagine also using VS's debugger on both of them. Debugging the debugger while it is debugging the scripted process which is also running in a VS debugger. It's kind of a mind-bender. Making it all work was too but it is and it's still going strong. We passed one thousand installed systems a while ago.
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"
|
|
|
|
|
It's quite old video. Few would have seen it in past too but its still fun to watch again: YouTube: MWBM-1
|
|
|
|
|
we are hardwired by our genetics - but we CAN (and SHOULD) do better
and 'men will be men' better not be an excuse for anything ...
|
|
|
|
|
If the guy had pressed '1', perhaps then he would not have suffered the embarrassment at the end.
Also strange to note that an 18-floor building has only one elevator.
|
|
|
|
|
Suffer? Embarrassment? Tactical priorities can change any time and there is no trophy for second place. There is no time to discuss your actions, nor your orders. Any questions? I know a few drill sergeants who can help you.
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
|
|
|
|
|
This looks like a video from India, and I am referring to the Indian context. I'm not sure of the context in Europe.
|
|
|
|
|
Hippo Birdy 2 U!
Hippo Birdy 2 U!
Hiiiippo Biiiirdy Deer @nagy-vilmos
Hippo Birdy 2 U
(We don't have a G&T smiley, or I'd have added a dozen for you)
Have a great day!
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
|
I have a reasonable memory, especially for trivia ...
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
He keeps dossiers on all of us.
Real programmers use butterflies
|
|
|
|
|
Dossiers instead of a database does have a certain appeal.
Wrong is evil and must be defeated. - Jeff Ello
Never stop dreaming - Freddie Kruger
|
|
|
|
|
They have flair that SQL lacks.
Real programmers use butterflies
|
|
|
|
|
|
Happy birthday!
Have another drop of gin!!!
|
|
|
|