Its important to understand there is still a wide gap between the promises and the actual capabilities.
Today HLS is a niche aimed at data path and still lacking on ability to describe the control and build an efficient pipe.
Its also important to remember that the promise is that you can write high level code – not RTL style systemC. This means that weird coding style that hint the tool how implementation should be done – may be practical but are not putting this approach on the right track.
Well-said, Sean. SystemC provides pre-defined constructs for defining the hardware items that you describe as necessary. This not only makes it easier for hardware designers to adopt, but it also provides an agreed-upon set of constructs so that we as an EDA industry can build an ecosystem of tools and IP so that this methodology can become mainstream.