← Back to context

Comment by timhh

3 years ago

Ha I suggested this on the C++ proposals mailing list 7 years ago:

https://groups.google.com/a/isocpp.org/g/std-proposals/c/b6n...

Enjoy the naysayers if you like! I'm glad someone spent the time and effort to push past them. Bit too late for me - I have moved on to Rust which had support for this from version 1.0.0.

> There's also the standard *nix/BSD utility "xxd".

> Seems like the niche is filled. Or, at least, if you want to claim that

> (A) XPM

> (B) incbin

> (C) "xxd -i"

> (D) various ad-hoc scripts given in http://stackoverflow.com/questions/8707183/script-tool-to-co...

>...do NOT completely fill this evolutionary niche

> This ultimately would encourage a weird sort of resource management philosophy that I think might be damaging in the long run.

> Speaking from experience, it is a tremendously bad idea to bake any resource into a binary.

> I'll point out that this is a non-issue for Qt applications that can simply use Qt's resources for this sort of business.

(Though credit to Matthew Woehlke, he did point out a solution which is basically identical to #embed)

> I find this useless specially in embedded environments since there should be some processing of the binary data anyway, either before building the application

In fairness there was a decent amount of support. But given the insane amount of negativity around an obviously useful feature I gave up.

I wonder if there was a similar response to the proposal to include `string::starts_with()`...

> > Speaking from experience, it is a tremendously bad idea to bake any resource into a binary.

What a pompous douche whoever wrote that was.

> > This ultimately would encourage a weird sort of resource management philosophy that I think might be damaging in the long run.

So, this might be a valid point, although not enough to reject the feature for. It true that it's a feature that could potentially see over-use and ab-use. But then, so did templates :-P

  • > What a pompous douche whoever wrote that was.

    And clearly someone who had never once written code for a system without a filesystem.