Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

proposition pour C1x

11 réponses
Avatar
ld
Il semble que les propositions pour le futur standard doivent se faire
par l'intermedaire de l'AFNOR pour la France. Et aux vues des
responses peu convainquantes sur comp.std.c a propos de la demarche a
suivre, est-ce qu'il y aurait une autre facon de faire, toujours a
l'echelle nationale, ou directement internationale (proposition via un
template). De plus il semble que comp.std.c ne soit pas la bonne place
pour des propositions.

J'aurais deux propositions qui augmenterait considerablement la
flexibilite du C sans compliquer le language ni changer sa semantique
et qui serait retro-compatible:

- les champs anonymes dans les struct et les union avec une regle de
substitution (as-if rule) et une regle d'acces (as-if rule equivalente
a celle de operator-> en C++), qui permettrait d'avoir le subtyping et
faciliterait la gestion des ADTs. Je soupconne que cela a deja ete
propose (et refute)?

- definition des _Alias pour l'overloading local des fonctions et des
operateurs (beaucoup plus simple que C++, pas de decoration de nom ni
de changement au link).

La combinaison des deux permettrait de programmer en C comme dans
d'autres langages orientes objet (e.g. Java, C#) sans toutefois faire
de C un language oriente objet, c'est a dire sans imposer son propre
modele objet (libre a chacun de faire comme il veut).

Naturellement, je n'ai pas le temps de proposer une implementation
dans un compilateur comme demonstation de faisabilite, mais il est
clair que cela ne devrait poser aucun probleme ni en terme de
specification (as-if rule sur l'existant), ni en terme
d'implementation. Je suispres a participer a une proposition de
specification si quelqu'un sait comment faire aboutir les
propositions.

a+, ld.

1 réponse

1 2
Avatar
Antoine Leca
ld a écrit :
Il semble que les propositions pour le futur standard doivent se faire
par l'intermedaire de l'AFNOR pour la France. Et aux vues des
responses peu convainquantes sur comp.std.c a propos de la demarche a
suivre, est-ce qu'il y aurait une autre facon de faire, toujours a
l'echelle nationale, ou directement internationale (proposition via un
template).



À l'époque de C99, il existait un groupe C++ à l'AFNOR, un responsable
clairement désigné de l'AFNOR pour les activités de SC22, et un
responsable technique représentant l'AFNOR à SC22. Malheureusement je
crois que les contraintes budgétaires sont passées par là...
Cependant, d'après les rapports d'activités de WG14, la France participe
«activement» aux discussions par email, donc il semble qu'il reste
quelque chose... mais je ne sais pas qui! (Gaby?)

Sinon, il y a plein d'autres pistes; par exemple :
- au niveau C++ il y a pas mal d'activité en France, donc je pense
qu'il doit toujours y avoir quelque chose de possible de ce côté-là;
- je ne pense pas que l'ANSI (ou l'INCITS) mette trop de barrières
nationales au niveau du recueil des commentaires publics; cependant,
cette phase des commentaires publics arrivera plus tard, probablement
trop tard pour introduire de nouvelles fonctionnalités.


De plus il semble que comp.std.c ne soit pas la bonne place
pour des propositions.



Non, effectivement :-) Certains membres du comité les liront peut-être,
mais ce n'est pas comme cela qu'elles auront la moindre chance d'être
présentées en séance (voire même au contraire).


Je suispres a participer a une proposition de
specification si quelqu'un sait comment faire aboutir les
propositions.



En gros, il te faudra présenter (personnellement c'est sûrement mieux)
ton projet au comité ; les prochaines réunions sont prévues du 30/3 au
3/4 à Markham (côte est?) chez IBM, et du 19/10 au 23/10 en Californie.
Le délai est court pour la réunion de ce printemps (la présentation
formelle doit être bouclée quelque semaines avant) mais je crois que
c'est encore possible.
Je crois que si tu t'engages implicitement à suivre les travaux du
comité jusqu'à la parution de C1x (soit sur environ 3 ans, sachant que
l'essentiel se passe par e-mail, si tu fais l'effort d'aller aux
réunions de ce côté-ci de la planète mais que tu ne puisses pas aller en
Californie par exemple, je ne pense pas que ce sera reproché), il y a de
bonnes chances de faire passer tes idées : le truc étant que les
participations des autres nations que les USA et dans une moindre mesure
le Canada et le R.-U. sont très valorisées... en effet une norme ISO
établie par un comité avec 30 membres dont 28 représentants les USA, 1
pour USA/Canada et 1 pour USA/UK (cf. les minutes de la dernière
réunion, http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1346.pdf),
cela fait assez peu «internationale» !


Antoine
1 2