Il Comitato Standard C ++ ha statuti e regole, ma la maggior parte di questi sono incentrati sulla struttura dell'organizzazione, su come presentare proposte, votare, pubblicare lo standard, ecc. E non tanto sui dettagli tecnici dello standard stesso né su come esso può essere testato.
Per quanto ne so, non esiste alcun requisito formale per "testare" una caratteristica o il suo design. Il C ++ è anche un po 'unico in quanto non esiste alcun riferimento o implementazione "primaria" (ad esempio Microsoft CLR, Oracle JDK, Zend PHP). Tuttavia, i membri del comitato sono composti da molte organizzazioni con una profonda conoscenza della lingua e dell'implementazione del compilatore. Ad esempio, se segui quel link precedente, vedrai rappresentanti di Microsoft e Intel che hanno entrambi compilatori C ++ rispettati. Sono coinvolti anche Red Hat e alcune altre aziende che contribuiscono a GCC.
Quando propongono una nuova funzione, i membri della commissione hanno già una buona idea se sia fattibile, se possa entrare in conflitto con altre funzionalità o rendere la grammatica ambigua in un modo che complica l'analisi inutilmente. ( ecco una buona domanda sulla grammatica del C ++ )
La risposta breve è "no, il comitato non richiede di testare i loro progetti utilizzando la prototipazione". Tuttavia, non c'è molto bisogno perché i membri del comitato sono esperti in C ++ che comprendono tutti i dettagli a un livello che la stragrande maggioranza dei programmatori non capisce. Ricorda, queste persone sono architetti del linguaggio che sono esperti di teoria del linguaggio e progettazione di compilatori.
Dato il coinvolgimento dei fornitori di compilatori nel processo, è possibile che uno o più di essi possano prototipare una nuova funzionalità, ma ancora una volta, non vi è alcun requisito formale per questo né è qualcosa di cui ho letto in documenti accessibili al pubblico dal Comitato C ++.
Inoltre tendono ad essere molto conservativi, aggiungendo in modo incrementale nuove funzionalità che hanno una domanda nel mondo reale senza specificare grandi quantità di nuove funzionalità che potrebbero rivelarsi rischiose. In effetti negli ultimi anni hanno aggiunto nuove funzionalità che esistevano come estensioni proprietarie o librerie open-source che già funzionano nel mondo reale. Ad esempio, C ++ 11 e C ++ 14 incorporano parti di Boost , che è già stato testato nel mondo reale in più compilatori e ambienti di esecuzione. Non è necessario testare qualcosa che è già stato testato.