Ecma TC57 - HLSL

Ecma/TC57/2026/XY
Ecma/GA/2026/XY

Minutes of the:6th meeting of Ecma TC57
held in:Teleconference
on:26 May 2026
Chairs:Chris Bieneman (Microsoft), Farzon Lotfi (Microsoft)
Attendees:Damyan Pepper (Microsoft), Hai Nguyen (Nvidia), Chris Bieneman (Microsoft), Alexander Johnston (AMD), Gregory Roth (Nvidia), Farzon Lotfi (Microsoft), Finn Plummer (Microsoft), Tex Riddell (Microsoft), Joshua Batista (Microsoft), Timothy Corringham (AMD), Deric Cheung (Microsoft), Jesse Barker (Invited Expert)
Secretary:Aki Rose Braun (Ecma International)

1 Welcome, opening and meeting logistics

Chris Bieneman, chair of TC57, began the teleconference and welcomed attendees. Attendees were reminded of the committee’s code of conduct, Ecma’s IPR policy, and TC57’s royalty-free patent policy extension. All attendees were informed that the meeting was recorded and transcribed by Zoom for the purpose of note-taking, and directed to review the video recording and legal disclaimer if they were not familiar.

2 Approval of the minutes of previous meetings

There were no open minute pull requests.

3 Review of the agenda

The meeting’s agenda pull request was proposed and approved at the start of the meeting.

4 Editor’s report

4.1 Grammar reference

The editors have merged their pull request (hlsl-tc57/tc57#46) to add an informative annex compiling all the grammars of the document. It’s inspired by specifications like ECMAScript, C, and C++, and is a useful tool for the reader.

4.2 Docker config

The editors merged in a PR (hlsl-tc57#40) providing a docker configuration for website and specification builds so every draft reader doesn’t need to install LaTeX (thank you! – the secretary)

5 New proposals

5.1 Memory and Execution Model

The chair requests that the committee review before the next meeting. hlsl-tc57#47

5.2 Numeric Constants

The chair requests that the committee review before the next meeting. hlsl-tc57#48

5.3 hlsl namespace

The chair requests that the committee review before the next meeting. hlsl-tc57#49

5.4 Modern C++

Chris seeks to merge adoption of modern C++ as an Under Consideration proposal and requests that delegates comment on the PR so he can be prepared to address any questions or concerns at the next meeting.

After some implementation experience with DXC, Chris feels the overhead on this is lower than might be expected at first glance. Gregory pointed out that “the devil is in the details”—what’s the testing situation and are there shared tests? Chris took advantage of LLMs specifically for generating test cases and felt that was sufficient.

Chris also pointed out that while baseline implementation of constexpr was straightforward, it seems as though there will be much more work in getting it operational for all scenarios where users might expect to be able to use constant values but DXC only parses literals.

6 Discussions

6.1 Roadmap view

The chair has set up a “project view” for tracking upcoming work and proposals, with the intent of associating upcoming changes with the meeting agenda on which they will be included. Please provide feedback for improvements.

6.2 Small PRs to merge

6.2.1 Basic Concepts Clause

Greg Roth provided a thorough review of the basic concepts clause PR, with the caveat that his change requests are not blocking, and could be addressed in a future pull request. No further decisions were made beyond approving the PR, but the topics raised are likely to be revisited so the reader may wish to review the comments on hlsl-tc57#23, in particular the conversation around entry points.

6.2.2 Conversions Clause - hlsl-tc57#24

Gregory Roth brought questions in his review regarding ranking, and in particular language around signed integers and inconsistent conversion ranking. Setting aside historical quirks via the evolution of C to C++ and on, the behaviour specified in HLSL is predictable enough that the language was approved. In the future, HLSL may need to produce a table not unlike the decl.type.simple table in the C++ specification.

Expressions Clause - hlsl-tc57#35

All comments on this PR were resolved before the meeting, and the PR was approved.

Declarations Clause - hlsl-tc57#37

Comments on this PR were resolved before the meeting and the PR was approved.

There was a brief detour to discuss empty sections and document organisation, where Chris clarified that the intent behind empty sections was to ensure that there were no broken references for clauses that will be authored at a later date but well before a first edition is meant to be published.

6.3 Stage advancements

6.3.1 202x removals to Refinement

The chair proposed advancing the removals proposal to refinement and received no objections.

6.3.2 cbuffer contexts to Refinement

The chair proposed advancing the cbuffer contexts proposal to refinement and received no objections.

6.3.3 restricted unbound arrays to Refinement

The chair proposed advancing the restricted unbound arrays proposal to refinement and received no objections.

6.4 Literals Specification Language #0002

6.4.1 C23 Suffixes - hlsl-tc57#31

The chair lacked motivation and sought feedback on including F16 and F32 suffixes from C23 in the specification, though was not actively opposed. The committee decided the implementation effort was minor enough that it was worth the addition.

The chair will make some minor clean-up and then merge hlsl-tc57/tc57#52.

6.4.2 asfloat16 overloads - hlsl-tc57#32

The chair sought feedback on keeping or modifying asfloat16 overloads, as they do not necessarily result in expected behaviour when passing unexpected values due to a function call before conversion. This is fundamental to the underlying language, but perhaps a fundamental change worth making? That is, do nothing about the asfloat16-related ambiguities and introduce a bitcast without implicit conversions instead of attempting to manipulate those conversions. (that feature is introduced elsewhere).

Gregory Roth and Tex Riddel will continue to review this and bring further comments if they have any.

5 Any other business

As mentioned at the last TC57 meeting, there was a request for some manner of blog post or newsletter to be available to a broader audience, so Chris threw something together. He says he’s not proud of it but honestly it’s pretty great.

It’s somewhat automatically generated to provide updates of what’s been merged recently.

Open questions:

  • This is a separate repo and website. Should it be merged with the spec?
    • Support for no.
  • Is this a reasonable direction to take this in?
    • Support for yes.

Gregory Roth reiterated his concern about potential obligation for maintenance, though that may be resolved by the blog being a simplified version of information already on GitHub. He also asked if there was a scenario where the blog provide more information, such as upcoming releases and how readers could prepare. Chris’s take was not only yes is that an option, but also information like the twice-annual Chairs’ report that TC57 prepares for the Ecma ExeCom might be an interesting read for those who don’t wish to commit an excess of time to following TC57 to get the Cliff’s Notes. (my words, not his—Aki)

6 Next meetings

The next meetings will take place as Zoom video calls fortnightly. The next scheduled is on 09 June.

6.1 Past and Future Agendas

Agendas are viewable on GitHub and remain available in perpetuity.

7 Conclusion

The Chair wrapped up the meeting and the call concluded.