On Fri, 19 Oct 2012 15:07:09 +0200 "foobar" <f...@bar.com> wrote:
> On Friday, 19 October 2012 at 00:14:18 UTC, Nick Sabalausky wrote: > > On Thu, 18 Oct 2012 12:11:13 +0200 > > "foobar" <f...@bar.com> wrote: > >> > >> How often large binary blobs are literally spelled in the > >> source code (as opposed to just being read from a file)? > > > > > > Frequency isn't the issue. The issues are "*Is* it ever > > needed?" and > > "When it is needed, is it useful enough?" The answer to both is > > most > > certainly "yes". (Remember, D is supposed to usable as a systems > > language, it's not merely a high-level-app-only language.) > > Any real-world use cases to support this claim? I've used it. And Denis just posted an example of where it was used to make code far more readable. > Does C++ have such a feature? It does not. As one consequence off the top of my head, including binary data into GBA homebrew became more of an awkward bloated mess than it needed to be. > My limited experience with kernels is that this feature is not > needed. "I haven't needed it" isn't remotely sufficient to demonstrate that something doesn't "pull it's own weight". > The solution we used for this was to define an extern > symbol and load it with a linker script (the binary data was of > course stored in separate files). > Yuck! s/solution/workaround/ > > > > Keep in mind, the question "Does it pull it's own weight?" is > > for > > adding new features, not for going around gutting the language > > just because we can. > > Ok, I grant you that but remember that the whole thread started > because the feature _doesn't_ work so lets rephrase - is it worth > the effort to fix this feature? > The only bug is that it tries to validate it as UTF contrary to the spec. Making it *not* try to validate it sounds like a very minor effort. I think you're blowing it out of proportion. And yes, I think it's definitely worth it. > > > >> In any case, I'm not opposed to such a utility library, in > >> fact I think it's a rather good idea and we already have a > >> precedent with "oct!" > >> I just don't think this belongs as a built-in feature in the > >> language. > > > > I think monarch_dodra's test proves that it definitely needs to > > be > > built-in. > > It proves that DMD has bugs that should be fixed, nothing more. Right so let's jettison x"..." just because *someday* CTFE might become good enough that we can bring the feature back. How does that make any sense? We already have it, it basically works (aside from only a fairly trivial issue). *When* CTFE is good enough to replace it, *then* we can have a sane debate about actually doing so. Until then, "Let's get rid of x"..." because it can be done in the library" is a pointless argument because at least for now it's NOT TRUE.