Skip to content

Roadmap

Chas. Boyd edited this page Jan 27, 2017 · 13 revisions

The plan for this project was originally announced last March at GDC 2016. The presentation video is here. A PDF of the slides is also available on that page.

Here is a summary of the key points:

Backlog of candidate language features

  • Enums
  • Bit-fields
  • Language Standard Annotations
  • References
  • Unions
  • Function Templates
  • Visbility: 'public, private, protected, friend'
  • Generic resource addressing

Stretch language features

  • 'constexpr'
  • Assertions
  • Function pointers (limited)
  • Lambdas (limited)
  • Virtuals
  • Constructors, destructors, etc.
  • Extern functions (linking)

Out of Scope language features

  • Exceptions
  • A stack
  • Recursion
  • STL Containers
  • C99/stdlib compatibility
  • Garbage collection

Candidate hardware features

  • Explicit float16/"half" type
  • Blender intrinsics
  • More atomic operations
  • Stereo system values (SV_XXXX)
  • Programmable blending (aka RT Read)
  • Input of arbitrary structures
  • More control over IEEE behavior
  • Future GPU features
Clone this wiki locally