On 23/09/2020 13:14, Vinnie Falco wrote:
On Wed, Sep 23, 2020 at 4:55 AM Niall Douglas via Boost
wrote: Me personally, if I were designing something like Boost.JSON, I'd implement it using a generator emitting design. I'd make the supply of input destructive gather buffer based
So you would implement an orange instead of an apple. Note that the C++ ecosystem already has the flavor of orange you are describing, it is called SimdJSON and it is quite performant. As with your approach, it produces a read-only document. Quite different from Boost.JSON. There's nothing wrong with implementing a library that only offers a parser and a read-only DOM, and there are certainly use-cases for it. Personally I would not try to compete with SimdJSON myself but perhaps you can do better than me, especially in the area of "parallel execution utilising superscalar CPU concurrency."
I never said what I'd do is comparable to what you've done. You're absolutely right it's an apple vs orange difference. What I was describing is the sort of design which would get me excited because it's novel and opens up all sorts of new opportunities not currently well served by existing solutions in the ecosystem. There was a larger point made though, regarding the tradeoff of optimal design vs getting it done. Historically you've favoured getting it done, and have not been a warm recipient to suggestions regarding alternative designs which would require you throwing most or all of what you've done away and starting again. Quite a few people have perceived this about you, and no longer bother to comment on anything you're doing or seeking advice upon. You asked off list what I meant by "personal retribution". I'd prefer to answer that on list. I am referring to you having, in the past, being perceived as harassing and persecuting individuals whose technical opinion you disagree with across multiple internet forums over multiple months, especially if they have ever publicly criticised a technical design that you personally believe doesn't deserve that criticism. That has caused those people, who perceive that about you, to not be willing to interact with anything you touch or are involved with, because they aren't willing to be followed all over the internet for the next few months by you. Now, personally speaking, I think it's more a case of you being rather enthusiastic and passionate in your beliefs and not thinking through other people's perception of you applying those beliefs, rather than you being malevolent. I have stated that opinion about you on several occasions when my opinion was privately sought. But you also need to accept that you reap what you sow in how you're perceived to treat people, just the same way as I knew I'd permanently make most of the technical Boost leadership hate me for life when I decided to go rattle their cages here so many years ago. You may take this reply personally. It was not meant as a personal attack. It was meant as a statement of facts to my best understanding, because I don't think many people tell you this stuff, and if nobody tells you, then there's no progress possible. Niall